我有一个问题,301重定向在Nginx。它总是用本地端口重定向到URL。
情况如下:站点正在通过Cloudflare运行,完全https。CF将http请求发送到清漆接受它们的服务器。然后,清漆将请求传递给nginx,nginx与FPM一起处理其余内容。
Nginx正在8080端口上运行。我在Nginx中创建了301重定向,就像我通常做的那样:
location = /url1 {
return 301 /url2;
}然后,Nginx重定向到URL,但是添加它正在运行的原始主机名&端口(8080)。因此,我在服务器配置中将port_in_redirect设置为off。那是一半的效果。它将把一个http URL重定向到https (没有提到端口8080)。它将将https URL重定向到http,循环。
我怎么才能确保不发生这种事?我不知道是否有可能知道Cloudflare也在为请求提供服务。
发布于 2019-03-25 07:43:45
尝试将absolute_redirect off添加到您的位置块
location = /url1 {
absolute_redirect off;
return 301 /url2;
}https://serverfault.com/questions/806909
复制相似问题