【发布时间】:2021-01-13 00:34:36
【问题描述】:
我网站的某些页面出现 502 错误,我不明白为什么某些页面可以正常工作,但其他页面显示此错误:
请求方法:POST 状态码:502 网关错误 推荐人政策:降级时不推荐人
【问题讨论】:
-
您在提供信息方面必须更加坦率一些。你的代码在哪里?请阅读stackoverflow.com/help/mcve 以获取有关如何提问的帮助。
标签: nginx
我网站的某些页面出现 502 错误,我不明白为什么某些页面可以正常工作,但其他页面显示此错误:
请求方法:POST 状态码:502 网关错误 推荐人政策:降级时不推荐人
【问题讨论】:
标签: nginx
您在 Nginx 中将Referer Policy 设置为“no-referer-when-downgrade”,这意味着在降级(httpS 提交到简单的 http)的情况下不会发送引用信息(作为您的表单 URL)。而且你背后的代码不喜欢没有这条信息。
最好将所有内容传递给 https :)
在你的 nginx.conf 中更改,策略为:
add_header 'Referrer-Policy' 'same-origin';
如果 2. 不起作用,请按照 1. 中的方法进行操作,或者您也可以(但 请 不要那样做,这很不安全):
add_header 'Referrer-Policy' 'unsafe-url';
更多: Mozilla's reference documentation about Referer Policy.
注意:
origin 只会设置没有 URI 的基本 URL,例如 https://domain-name.com/。而same-origin 会将完整的安全 URL 设置为引用者,如果它来自同一个域。这是安全的,因为标头是在 :433 安全端口侦听上传递的。
【讨论】:
add_header Referrer-Policy 'same-origin'; 是适合我的方式。 origin 停留在没有 URI 的域 URL。
我在设置 Sonarqube 时遇到了这个问题。 Sonarqube 默认在 127.0.0.1:9000 上运行,但是,我试图使用私有 IP 地址访问浏览器。我犯了同样的错误,将那个 IP 地址放在下面的配置中:
server {
location / {
proxy_pass http://<server_ip>:<port>;
}
}
我错误地将其设置为服务器的实际私有 IP 地址,而我应该将其设置为 http://localhost:<port>;
在这样做之后,我的应用程序运行正常......我希望这会有所帮助。
【讨论】: