事前準備工作:
- 如不確定「網站」和「來源」的差異,請參閱「瞭解『同網站』和『同來源』」。
- 由於規格中原本的拼字錯誤,
Referer
標頭缺少 R。JavaScript 和 DOM 中的Referrer-Policy
標頭和referrer
拼字正確。
摘要
- 瀏覽器正朝向隱私權強化預設參照政策發展,以便在網站未設定政策時,提供良好的備援機制。
- Chrome 預計在 85 版中逐步啟用
strict-origin-when-cross-origin
做為預設政策,這可能會影響依賴其他來源參照值的用途。 - 這是新的預設設定,但網站仍可選擇要採用的政策。
- 如要在 Chrome 中試用這項變更,請前往
chrome://flags/#reduced-referrer-granularity
啟用旗標。您也可以查看這項示範,瞭解實際變更。 - 除了參照網址政策外,瀏覽器處理參照網址的方式也可能有所變更,因此請密切注意。
異動內容和原因
HTTP 要求可能包含選用的 Referer
標頭,指出發出要求的來源或網頁網址。Referer-Policy
標頭會定義 Referer
標頭中提供的資料,以及目的地 document.referrer
中的導覽和 iframe。
網站要求中 Referer
標頭傳送的確切資訊,取決於您設定的 Referrer-Policy
標頭。

如未設定任何政策,系統會使用瀏覽器的預設值。網站通常會延後至瀏覽器的預設值。
如果是導覽和 iframe,也可以使用 document.referrer
,透過 JavaScript 存取 Referer
標頭中的資料。
直到最近,
no-referrer-when-downgrade
一直是瀏覽器廣泛採用的預設政策。但現在許多瀏覽器都處於
改用更注重隱私權預設設定的階段。
Chrome 預計從 85 版開始,將預設政策從 no-referrer-when-downgrade
變更為 strict-origin-when-cross-origin
。
也就是說,如果沒有為網站設定任何政策,Chrome 預設會使用「strict-origin-when-cross-origin
」。請注意,您仍可選擇設定政策;這項異動只會影響未設定政策的網站。
這項異動有何影響?
strict-origin-when-cross-origin
提供更多隱私權。這項政策會確保跨來源要求 Referer
標頭中只會傳送來源。
這樣一來,其他部分 (例如路徑和查詢字串) 的完整網址就不會洩漏私密資料。

例如:
跨來源要求,從 https://site-one.example/stuff/detail?tag=red 傳送至 https://site-two.example/…:
- 使用
no-referrer-when-downgrade
:Referer: https://site-one.example/stuff/detail?tag=red。 - 有
strict-origin-when-cross-origin
:Referer: https://site-one.example/。
哪些部分維持不變?
- 與
no-referrer-when-downgrade
相同,strict-origin-when-cross-origin
也安全無虞:當要求從 HTTPS 來源 (安全) 傳送至 HTTP 來源 (不安全) 時,系統不會提供參照網址 (Referer
標頭和document.referrer
)。這樣一來,如果網站使用 HTTPS (如果沒有,請優先處理),網站網址就不會洩漏在非 HTTPS 要求中,因為網路上的任何人都能看到這些要求,這會讓使用者暴露於中間人攻擊的風險中。 - 在相同來源中,
Referer
標頭值是完整網址。
舉例來說: 同源要求,從 https://site-one.example/stuff/detail?tag=red 傳送至 https://site-one.example/…:
- 有
strict-origin-when-cross-origin
:Referer: https://site-one.example/stuff/detail?tag=red
會有什麼影響?
根據與其他瀏覽器的討論,以及 Chrome 84 中執行的實驗,預計使用者會遇到的問題有限。
如果伺服器端記錄或 Analytics 依賴完整的參照網址,這類資訊的精細度降低可能會造成影響。
您需要做些什麼?
Chrome 預計會在 85 版中開始推出新的預設參照政策 (Beta 版於 2020 年 7 月推出,穩定版於 2020 年 8 月推出)。請參閱 Chrome 狀態項目。
瞭解並偵測變更
如要瞭解新預設值在實務上的變化,請參閱這項示範。
您也可以使用這個範例,偵測目前執行的 Chrome 執行個體套用了哪些政策。
測試這項變更,並判斷是否會影響網站
您現在就能在 Chrome 81 版中試用這項變更:在 Chrome 中前往 chrome://flags/#reduced-referrer-granularity
並啟用旗標。啟用這項標記後,所有沒有政策的網站都會使用新的 strict-origin-when-cross-origin
預設值。

現在可以檢查網站和後端行為。
如要偵測影響,請檢查網站的程式碼集是否使用參照網址,方法是透過伺服器上傳入要求的 Referer
標頭,或 JavaScript 中的 document.referrer
。
如果您使用來自其他來源的請求參照網址 (更具體來說是路徑和/或查詢字串),且該來源使用瀏覽器的預設參照網址政策 (即未設定任何政策),網站上的某些功能可能會中斷或出現異常行為。
如果這項異動會影響您的網站,請考慮改用其他替代方案
如果您使用參照網址存取網站要求的完整路徑或查詢字串,可以採取以下幾種做法:
- 請使用替代技術和標頭,例如
Origin
和Sec-fetch-Site
,進行 CSRF 保護、記錄及其他用途。請參閱「Referer 和 Referrer-Policy:最佳做法」。 - 如有需要,您可以與合作夥伴協調特定政策,並向使用者公開透明地說明。
存取權控管 (網站使用參照網址將資源的特定存取權授予其他來源) 可能就是其中一種情況,但 Chrome 變更後,來源仍會透過
Referer
標頭 (和document.referrer
) 分享。
請注意,就參照網址而言,大多數瀏覽器的發展方向類似 (請參閱「參照網址和 Referrer-Policy:最佳做法」一文,瞭解瀏覽器預設值及其演變)。
在網站上實施明確的隱私權強化政策
您的網站發出的要求中應傳送哪些 Referer
,也就是您應為網站設定哪些政策?
即使 Chrome 變更在即,建議您現在就設定明確的隱私權強化政策,例如 strict-origin-when-cross-origin
或更嚴格的政策。
這樣一來,不僅能保護使用者,還能讓網站在不同瀏覽器中的行為更加一致。主要是為了讓您掌控網站,而不是讓網站依賴瀏覽器預設值。
如要瞭解如何設定政策,請參閱「參照網址和參照網址政策:最佳做法」。
關於 Chrome Enterprise
IT 管理員可以透過 Chrome 企業政策
ForceLegacyDefaultReferrerPolicy
在企業環境中強制使用 no-referrer-when-downgrade
的舊版預設參照政策。企業將有更多時間測試及更新應用程式。
這項政策將在 Chrome 88 版中移除。
提供意見
您有意見回饋或想回報問題嗎?針對 Chrome 的出貨意圖分享意見,或在 Twitter 上向 @maudnals 提問。
特別感謝 Kaustubha Govind、David Van Cleve、Mike West、Sam Dutton、Rowan Merewood、Jxck 和 Kayce Basques 等審查人員的貢獻和意見回饋。