最近有一個議題滿有趣的,事隔這麼多年 Chrome 與 Firefox 到達版本號 100 的時候了,還記得在 Chrome 版本 9 更新到 10 的時候造成了很多伺服器出現問題。在多年後又到了 99 版本要更新到 100 版本的時候了,很多的伺服器在處理 User Agent 可能就會有錯誤發生畢竟它變成三位數了。
User Agent 版本號
我們可以觀察一下 User Agent 版本的變化,可以在下方發現 Chrome/98.0.4758.102
會變成 Chrome/100.0.4758.109
如果 Agent 的 parse 沒有處理好就可能發生問題。
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4758.109 Safari/537.36
而要檢查自己的 Chrome 版本號可以用這個小工具來檢查 https://is-chrome-100-yet.glitch.me/
如下是一個 98 版本的樣子
而如下是一個 100 版本的樣子
User Agent 偽裝
為了避免伺服器端發生 100 版號發生的問題 Chrome 與 Firefox 合作了一個計畫是,如果使用 100 版本號的 User-Agent 傳送給伺服器得不到回應就會改使用 99 版號在發送一次請求,可以說是很貼心。
預先測試 Chrome 100 版號與 Firefox 100 版號
因此在到達 100 版本之前應該先在自己的伺服器先試試看會不會有這個問題,提前處理它 Chrome 與 Firefox 都有一個可以預先開啟 100 版號的功能。
Firefox
在 Firefox 可以下載 Firefox Nightly 然後開啟設定,搜尋 “Firefox 100” 檢查 “Firefox 100 User-Agent String” 開啟它
Chrome
而 Chrome 可以開啟 “chrome://flags/#force-major-version-to-100” 設定 “Enabled”
更新時間
在更新到 100 版本前還有滿多時間可以測試的,可以注意 Chrome 與 Firefox 的更新時間提前做好測試
Chrome 100 版本
預計在 2022 年 3 月 29 日更新
https://chromiumdash.appspot.com/schedule
Firefox 100 版本
預計在 2022 年 5 月 3 日日更新
https://wiki.mozilla.org/Release_Management/Calendar
參考資料
《AWS CDK 完全學習手冊:打造雲端基礎架構程式碼 IaC》
第 12 屆 iT 邦幫忙鐵人賽 DevOps 組冠的《用 CDK 定 義 AWS 架構》
第 11 屆 iT 邦幫忙鐵人賽《LINE bot 好好玩 30 天玩轉 LINE API》
一個熱愛分享的雲端工程師!