al acceder: http://example.com/somefolder -> http://example.com:8080/somefolder
He intentado esto:
http {
port_in_redirect off;
¿Algunas ideas?
al acceder: http://example.com/somefolder -> http://example.com:8080/somefolder
He intentado esto:
http {
port_in_redirect off;
¿Algunas ideas?
serverbloque que contiene laproxy_passdirectiva. Lo que probablemente necesitará será unaproxy_redirectdirectiva: ver su configuración debería confirmar.port_in_redirectdeona,offes posible que deba reiniciarlo.port_in_redirectno funciona en absolutoRespuestas:
Me encontré con el mismo problema y
port_in_redirect off;realmente funcionó para mí, solo asegúrese de usarlo dentro delserver {}bloque.fuente
port_in_redirectinteriorlocation.Esto debería solucionar el problema. Agregar
proxy_redirectdirectiva justo después de laproxy_passdirectivaproxy_redirect http://example.com:8080/ http://example.com/;fuente
Si alguien sigue experimentando este problema mientras tiene apache detrás de la configuración del proxy inverso nginx, puede probar el ff:
ubicación / { proxy_redirect desactivado; proxy_set_header Host $ host: $ server_port; # <- este resolvió el mío proxy_set_header X-Fordered-Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Fordered-For $ proxy_add_x_forwards_for; proxy_pass http://127.0.0.1:8083 ; }Mi configuración es que dejo que Apache escuche 127.0.0.1:8083 y dejo las solicitudes de proxy nginx.
fuente
Tuve el mismo problema con mi configuración nginx + Apache. Apache parece estar redirigiendo a su propio puerto (ejecutándose en 8080), mientras que nginx está en el puerto 80.
En mi configuración, esto hizo un bucle de redireccionamiento infinito para las URL normales :
En su lugar, vincule los datos que regresan al puerto 80, así:
Aquí está mi bloque de servidor nginx:
Con esta configuración de comodín, todas las solicitudes que nginx no tiene bloque de servidor se pasan a Apache.
fuente
En caso de que alguien más tuviera este problema, el artículo aquí: http://www.linuxquestions.org/questions/linux-server-73/strange-nginx-redirects-without-trailing-slash-930876/ me resolvió el problema .
Tuve que agregar un encabezado adicional en el proxy.
Asegúrese de tener el Host configurado
$http_hosty también de haber configurado elX-Forwarded-Hostque se$http_hostmuestra a continuación:fuente
Creo que este simple ejemplo es suficiente:
fuente
http://wiki.codemongers.com/NginxHttpCoreModule#port_in_redirect
Espero que esto sea lo que estás buscando.
fuente
Tuve un problema similar.
Tal vez debería usar la directiva
proxy_set_headerpara establecer el host y la ubicación de los encabezados. En mi configuración agreguéproxy_set_header Location $host:80; y todas las solicitudes devuelven el puerto 80 ahora.fuente
Este problema es causado por Nginx auto traduce la ruta relativa a la ruta absoluta, ¿verdad?
Hay una manera de decirle a Nginx que no traduzca, agregue un espacio antes de la barra inclinada:
ngx.redirect(" /foo")fuente
En su lugar, recomendaría agregar esto a su bloque de servidor:
Esto fue cuando va a example.com/wp-admin irá a example.com/wp-admin en lugar de ir a example.com:8080/wp-admin/ y si está en CloudFlare DNS, por ejemplo, dirá El sitio está caído.
Estoy usando Ubuntu, Nginx y Varnish y esto funciona perfectamente ahora en lugar de deshabilitar port_in_redirect.
Para agregar, asegúrese de reiniciar nginx después de:
fuente
Agregar
absolute_redirect off;el bloque de ubicación me funciona.fuente