GitHub實施更嚴格的風控規則阻止中文使用者存取疑似是為了反爬蟲和反抓取
早前GitHub 因為失誤部署了屏蔽所有中國IP 位址的規則,中國IP 位址存取時會出現禁止存取提示,隨後GitHub 更新規則並解釋是部署錯誤,更新規則後中國IP 位址可以重新存取。

如果之前是失誤那現在肯定就是故意的了,GitHub 部署的新規則會對用戶語言進行檢查,如果用戶使用的是中文(僅限zh_CN) 則可能會觸發限製而被限制訪問,不過從情況來看GitHub 應該是為了反爬蟲的(例如某SDN 無差別拉取GitHub 上的項目搬到自家平台)。
從測試情況來看GitHub 將多個條件整合用來觸發限制,例如先檢查GitHub 的常規規則(包括黑名單IP 和UA),然後檢測IP 位址質量,以上兩個條件全部通過後再檢查第三個條件,也就是瀏覽器請求頭的語言部分是否包含zh_CN,如果檢測到用戶使用的中文則會傳回錯誤。
也就是說GitHub 並沒有針對特定區域的IP 進行封禁,如果用戶IP 品質沒問題的話則不會觸發語言檢測,因此如果用戶使用企業代理軟體存取GitHub 的話就可能因為IP 位址品質差(臟IP) 而觸發語言偵測。
從這些情況來看GitHub 大概率是為了反爬蟲和反抓取,目前大量AI 爬蟲對GitHub 瘋狂抓取用來訓練模型,這種抓取行為不僅會給GitHub 伺服器造成負擔,也會浪費大量流量造成GitHub 成本增加。
如果使用者並非爬蟲且造訪受到影響,那也可以進行針對性的解決:
1. 簡單方法就是直接修改請求頭將語言修改為en_US 等其他未被限制的語言
2. 更換品質較好的IP 位址避免觸發風控,當然更換IP 位址可能會增加潛在使用成本
不過針對語言的檢測很容易被繞過,接下來GitHub 很有可能會觀察情況並對修改語言的行為進行檢測,畢竟反爬蟲是個長期工作,GitHub 也只能根據爬蟲的情況進行針對性的策略調整實現封禁。