Fan*_*ane 19 redirect nginx cloudflare
我正在尝试设置NGINX和cloudflare.我在谷歌上读过这个,但没有解决我的问题.我的cloudflare目前很活跃.我删除了cloudflare中的所有页面规则,但之前有domain.com和www.domain.com使用HTTPS.我认为这可能导致问题所以我删除了它.这是我的defaultNGINX文件,目的是只允许通过域名访问,并禁止访问网站的IP值:
server{
#REDIRECT HTTP TO HTTPS
listen 80 default;
listen [::]:80 default ipv6only=on; ## listen for ipv6
rewrite ^ https://$host$request_uri? permanent;
}
server{
#REDIRECT IP HTTPS TO DOMAIN HTTPS
listen 443;
server_name numeric_ip;
rewrite ^ https://www.domain.com;
}
server{
#REDIRECT IP HTTP TO DOMAIN HTTPS
listen 80;
server_name numeric_ip;
rewrite ^ https://www.domain.com;
}
server {
listen 443 ssl;
server_name www.domain.com domain.com;
#rewrite ^ https://$host$request_uri? permanent;
keepalive_timeout 70;
ssl_certificate /ssl/is/working.crt;
ssl_certificate_key /ssl/is/working.key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
#ssl_dhparam /path/to/dhparam.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM$
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security max-age=15768000;
(...) more ssl configs
Run Code Online (Sandbox Code Playgroud)
什么可以关闭?如果需要,我会提供mroe信息......
pro*_*sti 55
试用后发现这只与Cloudflare有关.因为在搬到Coudflare之前我没有重定向问题.
在我的情况下,这样的简单修复.选择[Crypto]框并选择Full(strict),如图所示.
真的,你可以在任何其他行动之前先试试这个.
Sim*_*mba 15
@prosti 提供了解决方案。我将在这里添加一些关于为什么会发生重定向循环的解释。
在 Nginx 服务器前面设置 Cloudflare CDN 后。客户端无法再直接访问 Nginx。内容由 Cloudflare 提供的中间代理获取。问题的原因是这个代理不遵循Nginx 上设置的重定向。或者您可以认为它是硬编码的。
与遵循 302/301 重定向的 Web 浏览器不同。代理的行为(通过 HTTP 或 HTTPS 访问我们的 VPS 上的 Nginx)是在 Cloudflare Dashboard ->“SSL/TLS”中配置的。
解决方案是将加密级别配置为高于“Full”。
cns*_*nst 14
这些带有失控重定向的问题一直存在!
通常,问题在于301 Moved Permanently响应通常在浏览器中"缓慢地"缓存,并且通常没有办法CtrlR也没有办法CtrlShiftR,只有清除整个缓存.(这是我经常喜欢的原因之一302 Found/ 302 Moved Temporarily代替,特别是在开发阶段,因为302响应通常默认情况下不缓存的.)
此外,如果您过去使用过HSTS,并且浏览器成功获取并安静地安装了它,并且从未明确清除过期,那么浏览器将永远不会发出任何后续请求http://,除非政策被清除 - 所有请求将永远结束https://.
至于将CloudFlare放入混合中,是不是因为你的IP地址应该隐藏起来,它是否减少了首先拥有这么多不同服务器定义和重定向的需要?我不确定它有什么好处可能隐藏你的CloudFlare背后的IP地址,但公开透露它为任何进行全球互联网扫描的人提供的域名.
由于您已经完成了CloudFlare提供的所有"SSL模式",我建议将所有301 permanent重定向更改为302临时redirect(如果不是首先完全删除所有这些),清除浏览器的缓存,然后尝试再次绕过ssl选项.:-)
| 归档时间: |
|
| 查看次数: |
16185 次 |
| 最近记录: |