“降级时无推荐人”Nginx 502

use*_*802 2 nginx

我网站的某些页面上出现 502 错误,我不明白为什么有些页面可以工作,但其他页面会显示此错误:

请求方法:POST 状态代码:502 Bad Gateway Referrer Policy:no-referrer-when-downgrade

Erd*_* G. 5

问题

您在 Nginx中将Referer Policy设置为“no-referer-when-downgrade”,这意味着在降级(httpS 提交到简单的 http)时不会发送引用信息(作为您的表单 URL)。而你背后的代码不喜欢没有这条信息。

解决方案

  1. 最好是一切传递到http小号:)

  2. 更改您的 nginx.conf,策略为:

     add_header 'Referrer-Policy' 'same-origin';
    
    Run Code Online (Sandbox Code Playgroud)
  3. 如果 2. 不起作用,请按照 1. 中的说明进行操作,或者您也可以(但请不要这样做,这是非常不安全的):

     add_header 'Referrer-Policy' 'unsafe-url';
    
    Run Code Online (Sandbox Code Playgroud)

更多: Mozilla 的关于 Referer Policy 的参考文档

注意: origin只会设置没有 URI 的基本 URL,例如https://domain-name.com/. 而same-origin如果来自同一个域的设置将充分安全URL作为引用站点。它是安全的,因为标头是在:433安全端口侦听上传递的。