Po zainstalowaniu TeamViewer zmieniłem port wampserver na 8080, więc adres to http://localhost:8080.
W przypadku pliku hosta znajdującego się w folderze C: \ WINDOWS \ system32 \ drivers \ etc \ dokonałem również zmiany, jak poniżej
PRZED
127.0.0.1 www.example.com
PO
127.0.0.1:8080 www.example.com
Kiedy wchodzę na www.example.com, nie przekierowuję do mojego serwera wampirów, jak mogę to naprawić?
https://www.example.com
musisz przejść do portu 8080? lub do domyślnej 443? (tak jak powinno) Co oznacza: czy chcesz, aby https również był przekierowywany na port 8080 twojego lokalnego hosta? Czy w ogóle nie obchodzi Cię, gdzie zostanie to przekierowane?Odpowiedzi:
hosts
Plik jest tylko do rozpoznawania nazw hosta (na Windows, jak również na systemach uniksowych). Nie można tam podać numerów portów i nie ma możliwości robienia tego, co się chce z ogólną konfiguracją na poziomie systemu operacyjnego - przeglądarka wybiera port do wyboru.Więc używaj zakładek lub czegoś podobnego.
(Niektóre programy zapory / routingu mogą zezwalać na przekierowanie portów wychodzących, ale tak naprawdę nie wydaje się to atrakcyjną opcją.)
źródło
To, czego chcesz, można osiągnąć, modyfikując plik hosts za pomocą aplikacji Fiddler 2 .
Wykonaj następujące kroki:
źródło
Udało mi się to osiągnąć za pomocą narzędzia sieciowego dołączonego do systemu Windows
netsh
.Jak zauważa Mat: plik hosts służy tylko do rozpoznawania nazw hostów, więc kombinacja tych dwóch sprawdziła się dla mnie.
Przykład
Przegląd
działania
localhost:8081
127.65.43.21 example.app
127.0.0.0/8
(127.x.x.x
).127.65.43.21:80
nie jest zajęty przez inną usługę.netstat -a -n -p TCP | grep "LISTENING"
netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
http://example.app
Uwagi:
- Te polecenia / modyfikacje plików muszą być wykonywane z uprawnieniami administratora
- netsh portproxy potrzebuje bibliotek ipv6 nawet tylko do korzystania z v4tov4, zazwyczaj będą one również domyślnie dołączone, w przeciwnym razie zainstaluj je za pomocą następującego polecenia:
netsh interface ipv6 install
Możesz zobaczyć wpis dodany za pomocą polecenia:
netsh interface portproxy show v4tov4
Możesz usunąć wpis za pomocą następującego polecenia:
netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21
Linki do zasobów:
źródło
netsh interface ipv6 install
127.0.0.1
jako adres do dopasowaniaportainer.local
w moim pliku hosts. Następnie uruchamiam:netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.0.0.1 connectport=9000 connectaddress=127.0.0.1
naciśnij klawisz Enter w cmd / powershell, aby go uruchomić. Następnie wyjdź z netsh, piszącexit
. Pisanie w przeglądarcehttp://portainer.local
prowadzi mnie teraz tam, gdziehttp://localhost:9000
kiedyś przywykłem. To działało dla mnie jak urok.Fiddler2 -> Reguły -> Reguły niestandardowe
następnie znajdź funkcję OnBeforeRequest po umieszczeniu w następnym skrypcie na końcu:
źródło
Najprostszym sposobem jest użycie Ergo jako zwrotnego serwera proxy: https://github.com/cristianoliveira/ergo
Ustawiasz swoje usługi i ich adres IP: PORT i ergo trasuje je dla Ciebie :).
Możesz to samo osiągnąć za pomocą
nginx
lub,apache
ale musisz je skonfigurować.źródło
-Możesz użyć dowolnego darmowego adresu w sieci 127.0.0.0/8, w moim przypadku potrzebowałem tego dla kolby python i oto co zrobiłem: dodaj ten wiersz do pliku hosts (możesz znaleźć to Windows pod: C: \ Windows \ System32 \ drivers \ etc):
Upewnij się, że port jest domyślnym portem „80”. W moim przypadku jest to w kolbie python:
app.run("127.0.0.5","80")
teraz uruchom swój kod i przeglądaj
flask.dev
źródło
Jeśli dzieje się tak, że na lokalnym hoście działa inny serwer i chcesz nadać temu nowemu serwerowi inną lokalną nazwę hosta, taką jak
http://teamviewer/
Myślę, że tak naprawdę szukasz funkcji Virtual Hosts. Używam Apache, więc nie wiem, w jaki sposób obsługują to inne demony internetowe. Może to się nazywa Alias. Oto dokumentacja Apache:
Przykłady Apache Virtual Hosts
źródło
Używanie netsh z connectaddress = 127.0.0.1 nie działało dla mnie.
Mimo, że szukałem wszędzie w Internecie, nie mogłem znaleźć rozwiązania, które rozwiązało to dla mnie, a mianowicie użyć connectaddress = 127.xxx (tj. Dowolnego adresu 127. ipv4, ale nie 127.0.0.1), ponieważ wydaje się, że łączy się z powrotem z localhost po prostu to samo, ale bez ograniczeń, dzięki czemu sprzężenie zwrotne działa w netsh.
źródło
źródło
Potrzebujesz serwera NGNIX lub Apache HTTP jako serwera proxy do przekazywania żądań HTTP do odpowiedniej aplikacji -> która nasłuchuje na określonym porcie (lub zrób to z CNAME, który zapewnia firmę hostingową). Jest to najmocniejsze rozwiązanie i jest to po prostu bardzo prosty sposób na ciągłe dodawanie nowych subdomen lub automatyczne dodawanie nowych domen, gdy rekordy DNS są skierowane na serwer.
Era Apache nazywają ją Wirtualny host -> httpd.apache.org/docs/trunk/vhosts/examples.html
NGINX -> Blok serwera https://www.nginx.com/resources/wiki/start/topics/examples/server_blocks/
źródło