0

我们正在将我们的联邦政府网站迁移到仅限 https。我们收到了来自我们链接的网站的投诉,称当这些网站仅使用 http 时,我们的推荐人已经消失。这是因为 https->http 降级,默认情况下会隐藏引荐来源网址。

我们正在尝试使用 HTTP 请求标头Referrer-Policy: origin-when-cross-origin,但它似乎不起作用。但是,put<meta name='referrer' content='origin-when-cross-origin'>确实为大多数浏览器提供了正确的行为。

我们正在设置标题:

<pre>
$ curl -sI https://www.ncbi.nlm.nih.gov/corecgi/tests/testref.cgi
HTTP/1.1 200 OK
Date: Fri, 04 Nov 2016 20:53:38 GMT
Server: Apache
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Content-Security-Policy: upgrade-insecure-requests
Referrer-Policy: origin-when-cross-origin
Content-Security-Policy-Report-Only: default-src https:; script-src https: 'unsafe-inline' 'unsafe-eval'; font-src https: data:; img-src https: data:; style-src https: 'unsafe-inline'; report-uri https://www.ncbi.nlm.nih.gov/corecgi/csp/csp.cgi
Referrer-Policy: origin-when-cross-origin
Access-Control-Allow-Methods: POST, GET, PUT, OPTIONS, PATCH, DELETE
Access-Control-Allow-Origin:
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: X-Accept-Charset,X-Accept,Content-Type,X-Requested-With,NCBI-SID,NCBI-PHID
Content-Type: text/html
Vary: Accept-Encoding
X-UA-Compatible: IE=Edge
X-XSS-Protection: 1; mode=block
</pre>  

但该标题不起作用:

试试这个:https://www.ncbi.nlm.nih.gov/corecgi/tests/testref.cgi 注意 https->http 降级链接发送一个空白标题

然而它的<meta>元素给出了所需的行为: https ://www.ncbi.nlm.nih.gov/corecgi/tests/testref.cgi?meta=true

有没有其他人遇到过并解决了这个问题?

4

1 回答 1

2

看起来 Chrome 即将支持但还不完全支持 Referrer-Policy 标头:

它将在 Chrome 56 稳定版中可用。自 Chrome 53 以来,它一直处于旗帜后面,因此您可以运行 Chrome--enable-experimental-web-platform-features来尝试它。

Referrer-Policy 标头支持将在 Firefox 50 中提供:

于 2016-11-08T18:51:26.573 回答