Nginx为我们的应用终止SSL,Nginx和应用服务器之间的通信发生在端口8080上,我们的应用在配置中没有设置grails.serverURL
。
我们有定期重定向:
redirect uri: '/login'
但是当通过HTTPS访问时,重定向返回:
Location: https://domain.com:80/login
因此,浏览器尝试通过端口80打开SSL连接并失败。
答案 0 :(得分:3)
从X-Forwarded-Proto
删除nginx.conf
标题或添加X-Forwarded-Port
(推荐)解决了此问题。
答案 1 :(得分:0)
添加以下任何一项对我都有效:
proxy_set_header X-Forwarded-Port $server_port;
或
proxy_set_header X-Forwarded-Host $host:$server_port;