接受語言縮減機制有助於減少被動式數位指紋採集
降低
Accept-Language
敬上
,並只傳送使用者最常用的語言 (只有一個語言即可)。
從 Chrome 109 開始
歡迎點選
來源試用
表示接受 Accept-Language Reduction 功能,讓網站選擇
Accept-Language
標頭。這可讓網站發現並修正問題
修正後的 Accept-Language
成為 Chrome 的 Chrome 預設行為
如要在功能發布至穩定人口之前進行測試,請
請務必在 Chrome 109 版本推出前,選擇加入並進行測試 (目前
排定傳送時間) 為 2023 年 1 月 10 日)。
請查看下方縮減前後的 Accept-Language
標頭範例。
Accept-Language: en-GB,en;q=0.9,de;q=0.8,fr;q=0.7
Accept-Language: en-GB
以下概略說明來源試用和後續流程。您可以分享 針對這項異動提供意見回饋,或是您在試用來源試用期間遇到的任何問題: Accept-Language Reduction GitHub 存放區
什麼是 Accept-Language?
接受語言 這個字串會在每個 HTTP 請求上共用,並以 JavaScript 向所有使用者公開 載入了瀏覽器載入的多個資源這個應用程式目前包含了所有使用者 偏好語言。
為什麼 Accept-Language 會縮減?
接受語言縮減機制有助於減少被動式數位指紋採集 。
目前,所有 HTTP 都預設共用 Accept-Language
標頭。
並以 JavaScript 顯示給瀏覽器載入的所有資源這項服務
包含使用者的所有語言偏好設定。而不是透過瀏覽器
使用者設定的所有網站語言完整清單
提供多語言內容,因此我們即將推出可讓網站標明語言的新方法
多語言內容和瀏覽器必須負責
並顯示偏好語言
另一個原因可能是許多網站並未使用 Accept-Language
標頭
通用語言協議 (例如一個
研究指出只有 7.2% 的
前 10,000 名網站使用 Accept-Language
)。Chrome 無痕模式已降低
請Accept-Language
加入 1 號。
這對網頁程式開發人員有何影響?
需透過Accept-Language
提供語言協商的網站
做好相關準備,以享有 Accept-Language
折扣,並考慮參加
來源試用。減少的 Accept-Language
值會出現在:
Accept-Language
HTTP 要求標頭。navigator.languages
JavaScript getter。
瀏覽器會負責翻譯語言
傳送至網站的使用者偏好語言。如要達成這項目標,網站必須
新增兩個標頭
Variants
敬上
(新的標頭表示網站支援語言)Accept-Language
和
Content-Language
中的
回應標頭 (詳見下方範例)。
縮減的 Accept-Language
方案目前不含 iOS 和 WebView。
這些平台能繼續吸引Accept-Language
的完整清單。
我們計劃在日後支援這些平台。
Accept-Language Reduction 來源試用
來源試用要求參與的網站必須在其
回應,指示瀏覽器要啟用指定的試用。不過,
瀏覽器最初向網站提出要求時,無法得知
。這表示初始的
不會傳送經過變量的 Accept-Language header
。
對該頁麵包含相同來源與跨來源的子資源要求,
接收經過縮減的 Accept-Language
標頭。後續相同來源導覽
也會收到縮減的 Accept-Language
標頭。跨來源瀏覽
會還原為傳送完整標頭,而
網頁 (例如第三方 iframe 要求) 仍會傳送減少的Accept-Language
標頭。
這類似於使用者代理程式縮減來源試用。 如要進一步瞭解內部 Chromium 實作,請參閱 實作 Reduce Accept-Language HTTP 標頭。
參與 Accept-Language Reduction 來源試用
如需進一步指引,請前往 Chrome 來源試用入門, 但基本步驟如下所示
步驟 1
如要註冊來源試用並取得網域權杖, 請前往 試用 Accept-Language Reduction 頁面。
步驟 2
更新 HTTP 回應標頭:
- 將
Origin-Trial: <ORIGIN TRIAL TOKEN>
新增至 HTTP 回應 標題,其中 <ORIGIN TRIAL TOKEN
>其中包含 。 - 將
Content-Language
加入 HTTP 回應標頭中,以便指出 目標觀眾使用的語言。 - 在您的 HTTP 回應標頭中加入
Variants
來表示網站 支援的語言 - [選用] 在 HTTP 回應中新增
Vary: Accept-Language
建立用於內容交涉的快取金鑰 - 設定這些標頭只會觸發瀏覽器語言 協議 (初次要求可能重新啟動) 來源。如要讓網站顯示正確的語言表示法 使用者,您也需更新根據 使用者的 Accept-Language 標頭 (請見以下範例)。
步驟 3
在 Chrome M109 Beta 版 (或更新版本) 中載入您的網站,即可開始接收 已接受減少的 Accept-Language 字串。
如有任何問題或意見,歡迎前往 Accept-Language Reduction GitHub 存放區
示範
查看選擇採用來源試用的多語言網站示範畫面 (以及原始碼) 請見 https://reduce-accept-language.glitch.me/.
使用者選擇加入和退出來源試用 (以及 原始碼),請參閱 https://reduce-accept-language-ot.glitch.me/.
舉例來說,example.com
支援 ja
(日文) 和 en
(英文)。A 罩杯
可能是:
GET / HTTP/1.1
Host: example.com
Accept-Language: en
網站會根據使用者的偏好,判斷使用者偏好英文內容 接受的語言。回應標頭可能包括:
HTTP/1.1 200 OK
Content-Language: en
Variants: Accept-Language=(en ja)
Origin-Token: a-valid-token
如果使用者偏好日文內容,要求將會是:
GET / HTTP/1.1
Host: example.com
Accept-Language: ja
在這種情況下,網站會回應日文內容的標頭:
HTTP/1.1 200 OK
Content-Language: ja
Variants: Accept-Language=(en ja)
Origin-Token: a-valid-token
伺服器端網站則可能需要特定語言支援,但 未偵測到支援時,將改回預設值:
if(accept_language == 'ja') {
res.response('ja_page')
}
else {
res.response('en_page')
}
在上述範例中,example.com
會根據en
ja
Accept-Language
的值,如果沒有相符,則預設為 en
。在此情況下,
網站也可以提供重新導向至對應的語言網頁 (/en
或
/ja
(根據 Accept-Language
值計算)。查看與下列項目相關的詳細範例:
重新導向
實作文件
第三方來源試用支援
我們目前不支援將您的網域註冊為
試用第三方服務。
如果您運作的服務在各個來源中做為子資源實作
例如廣告放送或數據分析
Accept-Language
標頭 (如果頂層網站參與了來源)
試用。
確認來源試用是否正常運作
這份指南 Chrome 來源試用疑難排解 還提供完整的檢查清單,確保權杖設定正確。
您可以設定多種語言及其優先順序
chrome://settings/languages
,或是依序前往「設定」→「語言」。建議你選取
您的網站「不」支援該語言,因此該語言會移至清單頂端
確實觸發額外的重新協商
包含來源試用權杖的初始回應標頭應會 例如:

後續要求標頭包含減少的 Accept-Language 格式:

停止參與來源試用
在試用期間,您隨時可以停止參與, 接收完整的 Accept-Language 清單。如要停止參與,請按照下列步驟操作:
- 移除 Accept-Language Reduction 的
Origin-Trial
標頭 試用 Google Cloud 服務 - [選用] 移除要加入的
Variants
標頭 自 HTTP 回應 這個標題您也可以使用Variants
搭配空白值來完成 而負責任的 AI 技術做法 有助於達成這項目標 - [選用] 移除已新增的
Content-Language
標頭 如果不感興趣,請在 HTTP 回應中選擇加入來源試用 傳送此標頭
來源試用時間長度
Accept-Language Reduction 來源試用至少為期六個月。 大約對應至六個 Chrome 里程碑畫面上會顯示來源試用 在 M109 中,結尾為 M114 (是指包含試用版的最後一個 Chrome 版本) 可用)。屆時 Chrome 就會評估來源使用者的意見 然後再繼續傳送減少的 Accept-Language 字串 階段式:先減少 Accept-Language HTTP 標頭 JS 介面。如果某個網站需要更多時間進行測試,可以選擇加入後續測試 淘汰來源試用機制 接受語言字串至少六個月。日後我們將發布更多 並在淘汰試用方案準備就緒時查看詳細資訊。
提供意見
如有任何問題或意見,歡迎前往 Accept-Language Reduction GitHub 存放區