You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Nginx反向代理、Cloudflare全严格SSL与负载均衡器引发重定向循环问题求助

Nginx反向代理、Cloudflare全严格SSL与负载均衡器引发重定向循环问题求助

大家好,我最近碰到个棘手的重定向循环问题,折腾好半天没搞定,来这儿求助各位大佬!我的架构是Nginx反向代理前置,后面接Nginx负载均衡器,域名用Cloudflare解析,SSL模式开的是Full-strict,结果现在访问站点直接陷入重定向循环了。

先给大家理清楚我的整体架构:

  • 域名:aarohisilks.com
  • DNS:Cloudflare,A记录指向代理服务器的公网IP,SSL模式设置为Full-strict
  • 代理服务器(Nginx):负责终止SSL连接,把流量转发到负载均衡器的80端口
  • 负载均衡器(Nginx):将接收到的流量分发给后端业务服务器

下面是我代理服务器上的Nginx配置文件/etc/nginx/sites-available/reverse-proxy.conf的内容:

# Temporary configuration for ACME challenge
server {
    listen 80;
    server_name ~^.*$;

    location /.well-known/acme-challenge/ {
        root /var/www/html;
        allow all;
    }

    location / {
        return 404;
    }
}

#Redirect HTTP to HTTPS for all domains
server {
    listen 80;
    server_name ~^.*$;
    return 301 https://$host$request_uri;
}

# SSL configuration for proxy subdomain
server {
    listen 443 ssl;
    server_name gateway.enlivendesigners.com;

    ssl_certificate ...; # 这里配置内容被截断了
    # 后续SSL相关配置和转发逻辑还没贴全,但核心是转发到负载均衡器80端口
}

目前的问题就是,不管访问主域名还是代理子域名,都会触发重定向循环。我怀疑是不是Cloudflare的Full-strict模式和Nginx的SSL终止、转发逻辑之间有冲突?或者是负载均衡器那边的配置(我还没贴出来)也有问题?有没有大佬能帮我分析下可能的原因,或者给我点排查方向?

备注:内容来源于stack exchange,提问作者havishka

火山引擎 最新活动