Header - Accept-Language & Content-Language
Table of Contents
#
Header - Accept-Language & Content-Language
##
Intro
多國語系的判定主要靠這兩個來處理
這裡的語言代碼一率遵循 ISO 639-1 codes
##
Accept-Language
系統或是 client 需要帶在 request header 中
表示 client 所使用的語言
有時會帶有 location 資訊(location 依照 ISO 3166-2 標準且都是大寫
多語言時用 ,
分隔
會在後面用 q
表示權重
accept-language: zh-TW,zh;q=0.9,en-US;q=0.8,en;q=0.7
這個 header 常被用來判斷 client 的主要語言來判斷處理要回給 client 用哪個語言
##
Content-Language
server 帶在 response header 中
用以表示該 response 是提供哪些語言的內容
一樣可以是單純的 lang
或是 <lang>-<location>
也可以用 ,
分隔多語言
也可以在 HTML 中宣告
<html lang="de">
##
W3C I18n Checker
W3C 提供一個可以確認的網站
- HTML meta tag
- HTTP header
- Sitemap
使用以上三種方法來讓 Google 爬
##
Keypoint
- 可以依照
Accept-Language
裡面的多語系權重去判斷要給予使用者適合的語系 - 不管是 W3C 還是 Google 其實都建議不能單純的依靠上述來判斷語系, 還是需要有提供能讓使用者手動切換語言的選項
- Chrome 的同步設定會連 browser 慣用語言的設定一起同步…