Nie można zmapować numeru portu w / etc / hosts. Zamiast tego możesz zdefiniować jako 127.0.0.1 api.mydomain.comi uzyskać do niego dostęp w przeglądarce, np.api.mydomain.com:8080
Fizer Khan
Czytałem gdzieś, że dns to obsługuje. Możesz mieć rekord, który mówi na www.example.com, http jest na porcie 80, a także rekord A, który mówi, że adres to 127.0.0.1, powiedział również, że nie był dobrze obsługiwany. Po tym niewiele się mówiło.
ctrl-alt-delor
Odpowiedzi:
185
Nie, to niemożliwe. Port nie jest częścią nazwy hosta, więc nie ma znaczenia w hostspliku -f.
Myślę, że linia proxy_pass powinna wyglądać tak: proxy_pass http://127.0.0.1:8000;Mam „nieprawidłowy prefiks URL” na nginx 1.4.3.
Nobu
dzięki za tę wspaniałą wskazówkę! proste rozwiązanie dla większości serwerów.
mikachoskopy
Używam tej sztuczki do mapowania portów komputera zdalnego (np. Cloud.app:80, podczas gdy rzeczywisty port to 8080). Bardzo przydatny do testowania węzłów zbieżności klastra, ale uzyskując do nich dostęp przy użyciu tego samego podstawowego adresu URL. Dzięki!
Gábor Nagy
9
Miałem w zasadzie ten sam problem, a rozwiązanie korzystające z tego odwrotnego proxy jest naprawdę pomocne. Chociaż chciałem prostszego rozwiązania, więc stworzyłem to narzędzie: github.com/cristianoliveira/ergo. Mam nadzieję, że to jakoś pomogło :)
127.0.0.1 api.mydomain.com
i uzyskać do niego dostęp w przeglądarce, np.api.mydomain.com:8080
Odpowiedzi:
Nie, to niemożliwe. Port nie jest częścią nazwy hosta, więc nie ma znaczenia w
hosts
pliku -f.źródło
Jeśli naprawdę musisz to zrobić, użyj odwrotnego proxy.
Na przykład z nginx jako odwrotnym proxy
źródło
proxy_pass http://127.0.0.1:8000;
Mam „nieprawidłowy prefiks URL” na nginx 1.4.3.