前言: 為了防止機器人攻擊,國外很多網站都使用了 Google reCaptcha 驗證碼,reCaptcha 對于國外用戶非常的友好,但是…對于國內用戶就不怎么友好了,究其原因,則是國內網路全線屏蔽 Google 服務,導致 reCaptcha 完全加載不出來,這樣,國內玩家就無法在對應的網站進行下一步操作了,本方案可以解決 reCaptcha 無法加載的問題,
適用平臺: Chrome 電腦版,Firefox 電腦版,Firefox 手機版(Android)
適用范圍: 大部分的 Google 人機驗證的國內加載都可以用這個方案解決,包括本博客的 reCaptcha 驗證碼,
本方案無法修改部分網站的 Content-Security-Policy,所以這個方案對于這部分網站是無效的,至于對哪部分網站無效請參見 FAQ,
請注意,由于方案的特殊性,少數網路情況下不一定成功,但是,大部分網路情況下都是可以成功的,
第一步 安裝插件
本方案基于 Header Editor 插件,因此,您需要先在您的瀏覽器中安裝這個插件,
下面是不同的瀏覽器對應的方法(請事先確定好你用的瀏覽器),
提醒: 目前已重新上傳可以用于 Chrome 最新版的離線插件,如果 Chrome 方案無法使用請使用 Firefox 方案,
Chrome 電腦版由于 Chrome 官方網上應用店已經被封鎖,因此:
如果你會翻墻:
直接進入Chrome 官方網上應用店,搜索并下載 Header Editor 插件,點擊此處轉到 Chrome 網上應用店下載插件,

如果你不會翻墻:
使用本文提供的離線安裝附件,手動安裝,
安裝方法:
將你下載到的離線安裝檔案解壓出來,解壓后,你應該可以看到一個名字為 Header Editor.crx 的檔案,
之后,打開 Chrome,進入擴展程式管理頁面,

將你解壓的 Header Editor.crx 拖到里面來,記得在拖動之前打開右上角的“開發者模式”,

若出現這個對話框即代表可以正常安裝,點擊“添加擴展程式”即可,

Header Editor 離線安裝檔案: GitHub Pages
Firefox 電腦版Firefox 用戶安裝這個插件就簡單多了,可以點擊此處下載: Header Editor[Firefox]
Firefox(國際版) 電腦版下載: 點擊此處

如果你想搜索安裝那也可以,點左上角的按鈕,然后在彈出的視窗中選擇“附加組件”,然后去“插件”里搜索就可以了(會直接跳到 Firefox 官方插件下載網站上搜索,接下來你應該都會),


對于 iOS(蘋果手機) 用戶,鑒于蘋果的相關規定,Firefox iOS 版本不能安裝插件,
對于 Android(安卓手機) 用戶,可以在此處下載: Firefox Android 官方下載,當然如果有能力翻墻,也可以搜索 Google Play 進行安裝,
這里以 Android 版本為例子(AZ 手頭上沒有蘋果手機),
下載好 Firefox 后,打開,可以點擊此處直接下載: Header Editor[Firefox]

如果你想搜索下載,先輕觸右上角的小圓點按鈕,然后選擇“附加組件”

在出現的“附加組件”頁面中選擇“瀏覽全部 Firefox 附加組件”,

接下來你會被轉到 Firefox 官方插件下載網站,在那里搜索插件下載安裝即可,
第二步 配置插件
打開 Header Editor 插件的配置頁面,選擇“匯入和匯出”選項,

此處需要匯入我寫好的配置,這里提供兩種方法,
方法1: 手動下載組態檔首先在此處下載我寫好的配置: GitHub Release
在“本地檔案”點擊“匯入”,匯入剛才你下載的組態檔,
方法2: 匯入在線配置在下載規則中,填入下面的地址(任選其一,推薦使用 GitHub 版本):
- (GitHub,推薦) https://azurezeng.github.io/static/HE-GoogleRedirect.json
- (本站服務器) https://www.azurezeng.com/static/HE-GoogleRedirect.json
然后點擊下載按鈕,
如果先前匯入過,你應該可以在下載規則中直接找到這個地址,直接點擊旁邊的下載按鈕即可,

接下來你應該會在“匯入”看到相關規則(如果之前匯入過,“操作”中的“添加”會顯示為“覆寫已有”),選擇“保存”即可,

最后你的規則串列應該是這樣的:

好了,關閉這個頁面,然后就可以了,現在 reCaptcha 應該可以正常顯示了,
原理這個插件將 reCaptcha 的呼叫(www.google.com/recaptcha)直接跳轉到了 reCaptcha 國內鏡像上面(recaptcha.net/recaptcha),
由于 reCaptcha 國內鏡像是可以直接連接的,而且還是 Google 官方的鏡像,所以就能正常加載了,(這個和 xmdhs 的解決方法原理是一樣的)
另外,這個方案還會修改頁面的 Content-Security-Policy(內容安全政策) 設定,使得有 Content-Security-Policy 的頁面的 reCaptcha 能正常加載,(這就是于 xmdhs 的解決方案的不同之處)
常見問題解答(FAQ)
Q: 我按照這個方案做了但是還是看不到驗證碼
A: 嘗試 ping 一下,看下能不能連接到 recaptcha.net,

如果提示連接超時,則需要將能連接的 recaptcha.net IP 加入 hosts 串列中,
可以用網路上的超級 ping 工具獲取其他的 recaptcha.net IP,比如使用站長之家的 ping 工具: 傳送門
通過 ping 可以測驗所獲取到的 IP 是否能連接,如果可以連接,把這個 IP 加入 hosts 即可解決該問題,
Q: 我覺得這篇文章很不錯,想通過轉發幫助更多人,能轉載嗎?
A: 可以,但是必須注明原文地址,要是沒有注明原文地址,我發現后可能會舉報的
Q: Chrome 程式包無效
A: 嘗試用 Firefox,Firefox 是可以與 Chrome 并稱的瀏覽器,速度一樣快且使用記憶體更少,更重要的是在國內也可以使用 Firefox 的全部功能,
Q: 這個方案能改哪些形式的 Content-Security-Policy?
A: 回應頭(Response Header)的 CSP 可以修改,但是,若 CSP 寫在 HTML 中的 meta 里就改不了,
后續將補充更多 FAQ,
原文鏈接:https://blog.azurezeng.com/recaptcha-use-in-china/轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/135506.html
標籤:其他
上一篇:NumPy解釋線性代數
