• 2
  • 新人请关照

安装在Docker上的Ghost使用环境变量配置了URL后无法访问,“重定向次数过多”

环境:Nginx(带SSL)+Docker+Ghost

Docker容器运行时配置了环境变量-e URL=xxx

Nginx配置:

server {
    listen 443 ssl http2;
    ssl on;
    server_name xxxxx.xxx;
    ssl_certificate /etc/nginx/ssl/*.xxxxx.xxx.cer;
    ssl_certificate_key /etc/nginx/ssl/*.xxxxx.xxx.key;
    add_header Strict-Transport-Security max-age=31536000;
        location / {
        proxy_set_header    X-Real-IP   $remote_addr;
        proxy_set_header    Host              $http_host;
        proxy_pass         http://127.0.0.1:80xx;
}
}
server {
    listen 80;
    server_name xxxxx.xxx;
    add_header Strict-Transport-Security max-age=31536000;
    return 301 https://xxxxx.xxx$request_uri;
}

现象:Chrome提示重定向次数过多,关闭Docker容器显示502 Bad Gateway

不附加环境变量正常

阅读 1.4k
评论
    1 个回答
    • 2.2k

    最近在搭建 Ghost博客时,因为使用的 Nginx不由我控制,所以也遇到了这个使用 https “重定向次数过多”的问题(url 修改为 http 就没有问题);经过搜索,得到答案: X-Forwarded-Proto 对于 SSL 尤其重要。所以,使用 Nginx or Apache 作代理时候,需要对其进行配置;如果你使用 Nginx 的话,可以作如下配置:

    location / {
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_pass http://127.0.0.1:2368;
    }

    参考:

      撰写回答

      登录后参与交流、获取后续更新提醒

      相似问题
      推荐文章