CLOUDFLARE代理请求重定向你太多次

现象

使用CLOUDFLARE代理前请求正常,使用CLOUDFLARE代理请求后出现
在这里插入图片描述

原因分析

以下是我的猜测,在默认情况下
CLOUDFLARE代理,可能是直接请求我们服务器的IP,比如:http://1.1.1.1 而不是通过域名的方式(如:https://www.ccc.cn)请求我们。所以导致,我们使用nginx在服务器上配置的https的配置并没有生效,而是请求的http的。
而我的http的设置是自动跳转到https,配置如下:

server {
    
    
    listen 80;
    server_name demo.cn;
    return 301 https://demo.cn$request_uri;
}

这样的导致了重复跳转的情况了。
在这里插入图片描述

解决办法

  1. 不修改CLOUDFLARE的情况下,服务器端不配置https,直接配置http就行了,CLOUDFLARE会自动配置SSL证书。
  2. 检查 Cloudflare 的 SSL/TLS 设置
    进入 Cloudflare 控制面板,导航到 SSL/TLS 设置,确保选择了合适的模式:

Full (严格模式):适用于服务器已正确安装有效的 SSL 证书。
Full:适用于服务器有自签名证书或不完全受信任的证书。
Flexible:仅在服务器未配置 HTTPS 的情况下使用。
注意:

如果服务器已经配置了 HTTPS,请不要选择 Flexible,因为这会导致 Cloudflare与服务器之间的通信使用 HTTP,可能造成重定向循环。
推荐使用 Full (Strict) 模式。

我这里使用的是方法1,方法2来自网络我并没有实测。

总结

避免出现跳转就行了。

server {
    
    
    listen 80;
    server_name demo.cn;
    return 301 https://demo.cn$request_uri;
}