2026-11-01 · 技術
簡繁英多版本共用一個路徑,快取容易互相汙染,搜尋引擎還可能判重複內容。從 URL 結構、回源就近到 hreflang 標註,一次理順。
做外貿或多地區業務,站點通常會有簡體、繁體、英文幾個版本,甚至同一語言下再按地區分站。這類站點的加速難點不在於節點多少,而在於快取和搜尋引擎兩件事沒配對,結果是要麼使用者看到別的語言版本,要麼搜尋引擎把幾個版本當成重複內容。 先說快取。CDN 預設按 URL 做快取鍵,如果幾個語言版本共用同一個路徑、只靠 Cookie 或瀏覽器語言判斷,快取就會互相汙染:一個使用者把英文頁面快取下來,後面的使用者訪問同一路徑也拿到英文。正確做法是讓語言和地區體現在 URL 上,比如用 /cn/、/tw/、/en/ 這樣的路徑字首,快取鍵自然分開;確實要用同一路徑的,至少把語言相關的請求頭加入快取鍵,但這會顯著降低命中率,不如路徑分離乾淨。 再說回源。多地區站點最好讓源站或中間層按地區就近接入:亞洲使用者回源到香港或新加坡節點,歐美使用者回源到就近節點,避免跨洲回源把延遲拉高。如果只有一個源站,至少把靜態資源交給 CDN 邊緣快取,減少回源次數。 然後是 hreflang。每個語言版本頁面裡,用 link 標籤列出所有語言版本的地址,並標註對應的語言和地區程式碼,同時給出一個預設版本。這一步是告訴搜尋引擎,這幾個頁面是同一內容的不同語言版本,避免被判為重複內容而只收錄一個。注意 hreflang 裡的地址要用絕對地址,且必須能正常訪問、返回 200;某個版本還在建設中,先不要寫進去。 還有兩個容易忽略的點:語言切換時不要用重定向把使用者強行帶走,讓使用者自己選擇並記住偏好;各語言版本的 sitemap 分開提交,出問題時更容易定位。 加速IDC 的 CDN 加速覆蓋東南亞多個節點,配合域名解析的地區排程,多語言站點可以把快取鍵、回源路徑和解析策略一起理順。