podczas uzyskiwania dostępu: http://example.com/somefolder -> http://example.com:8080/somefolder
Próbowałem tego:
http {
port_in_redirect off;
Jakieś pomysły?
podczas uzyskiwania dostępu: http://example.com/somefolder -> http://example.com:8080/somefolder
Próbowałem tego:
http {
port_in_redirect off;
Jakieś pomysły?
server
blok zawierającyproxy_pass
dyrektywę. To, czego prawdopodobnie będziesz potrzebować, toproxy_redirect
dyrektywa - sprawdzenie konfiguracji powinno potwierdzić.port_in_redirect
zon
naoff
może być konieczne jej ponowne uruchomienie.port_in_redirect
ogóle nie działaOdpowiedzi:
Właśnie natknąłem się na ten sam problem i
port_in_redirect off;
faktycznie dla mnie pracował, po prostu upewnij się, że używasz go wserver {}
bloku.źródło
port_in_redirect
środkulocation
.To powinno rozwiązać problem. Dodaj
proxy_redirect
dyrektywę zaraz poproxy_pass
dyrektywieproxy_redirect http://example.com:8080/ http://example.com/;
źródło
Jeśli ktoś nadal doświadcza tego problemu, mając apache za konfiguracją odwrotnego proxy nginx, możesz spróbować ff:
Moja konfiguracja polega na tym, że pozwalam Apache'owi słuchać 127.0.0.1:8083 i zezwalam na żądania proxy nginx.
źródło
Miałem ten sam problem z konfiguracją nginx + Apache. Wydaje się, że Apache przekierowuje na swój własny port (działający na 8080), podczas gdy nginx jest na porcie 80.
W mojej konfiguracji spowodowało to nieskończoną pętlę przekierowania dla normalnych adresów URL:
Zamiast tego powiąż powracające dane do portu 80, tak jak to:
Oto mój blok serwera nginx:
Przy tej konfiguracji symboli wieloznacznych wszystkie żądania nginx nie mają bloku serwera, dla którego są przekazywane do Apache.
źródło
Na wypadek, gdyby ktoś miał ten problem - artykuł tutaj: http://www.linuxquestions.org/questions/linux-server-73/strange-nginx-redirects-with-trailing-slash-930876/ rozwiązał problem dla mnie .
Musiałem dodać dodatkowy nagłówek w proxy.
Upewnij się, że zestaw do hosta
$http_host
, a także, że zostało ustawioneX-Forwarded-Host
na$http_host
takie jak poniżej:źródło
Myślę, że ten prosty przykład wystarczy:
źródło
http://wiki.codemongers.com/NginxHttpCoreModule#port_in_redirect
Mam nadzieję, że tego właśnie szukasz.
źródło
Miałem podobny problem.
Może powinieneś użyć dyrektywy
proxy_set_header
do ustawienia hosta i lokalizacji nagłówków. W mojej konfiguracji dodałemproxy_set_header Location $host:80
; i wszystkie żądania zwracają teraz port 80.źródło
Ten problem jest spowodowany automatycznym tłumaczeniem ścieżki Nginx na ścieżkę bezwzględną, prawda?
Jest sposób, aby powiedzieć Nginxowi, że nie tłumaczy, dodajesz spację przed ukośnikiem:
ngx.redirect(" /foo")
źródło
Polecam zamiast tego dodać to do twojego bloku serwera:
To było, kiedy przejdziesz do example.com/wp-admin, to przejdzie do example.com/wp-admin zamiast do example.com:8080/wp-admin/, a jeśli na przykład korzystasz z CloudFlare DNS strona nie działa.
Używam Ubuntu, Nginx i Varnish i działa to teraz doskonale, zamiast wyłączać port_in_redirect.
Aby dodać, zrestartuj nginx po:
źródło
Dodanie
absolute_redirect off;
bloku lokalizacji działa dla mnie.źródło