最近訪問一些面向國外的網站總是會出現ajax.googleaips.com無法加載的情況.以下為加載stackoverflow時的情境:
圖1 -無法加載的google公共庫
問題的原因是谷歌沒有在國內開放ajax公共庫服務
使用Redirector解決公共庫加載問題
Redirector這個插件的功能正如它的名字, 可以對網頁中的內容進行重定向
外部樣式表,外部腳本, 圖片等均可以添加至作用范圍
安裝
Redirector目前支持Firefox、Chrome、Opera三款瀏覽器,可以前往對應瀏覽器的應用市場下載安裝相應版本
熟悉Github的用戶也可以直接前往項目主頁上找下載鏈接:einaregilsson/Redirector
使用
注:如果你不希望手動設置,可以直接瀏覽“使用Import來導入設置”一節來使用導入來進行設置
下面以我使用的Firefox為例。
安裝后工具欄中會出現Redirector的圖標,點擊彈出菜單
圖2 -彈出菜單
菜單中包含啟用/停用與編輯重定向規則兩個按鈕,這里我們點擊第二個按鈕進入設置頁面來編輯重定向規則
圖3 -設置頁面
點擊‘Create new redirect’來新建重定向規則
圖4 -編輯重定向規則
然后依次填寫各項
- Description中填寫描述,這里我們填寫Ajax來說明這條重定向規則應用於谷歌Aja公共庫,當然你也可以隨便填其他內容
- Example URL中隨便填寫一個要應用重定向的URl, 這里我們使用 http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
- Include partten中填寫用來識別要應用重定向的URl的表達式,這里我們填寫 *ajax.googleapis.com*
- Redirect to中填寫欲重定向至的URL,這里我們填寫 $1ajax.lug.ustc.edu.cn$2
圖5 -依次填寫各項
依次填寫各項后Example result項會顯示出將Example Url根據規則修改后的結果,這里顯示出http://ajax.lug.ustc.edu.cn/ajax/libs/jquery/1.7.1/jquery.min.js,嗯,非常完美不是嗎
關於國內谷歌公共庫鏡像ajax.lug.ustc.edu.cn
我們需要有一個可以提供相同服務的鏡像來替換ajax.googleapis.com
之前國內常用的是360鏡像ajax.useso.com, 不過最近掛掉了, 於是我在網上找到了另一個鏡像ajax.lug.ustc.edu.cn
關於ajax.lug.ustc.edu.cn請查看這篇文章
關於Include partten中的' * '占位符與Redirect to中的' $ '符號
官方文檔中的一句話
$1, $2, $3 in the redirect urls will match the text that the stars matched.
也就是說Redirect to中的$1、$2分別指代了Include partten中第一個、第二個‘ * ’星號所匹配的內容
我們的設置方法通俗的說就是把原Url中ajax.googleapis.com之前與之后的內容分別抓取下來,粘貼到ajax.lug.ustc.edu.cn前后, 形成新的網址
更多關於匹配規則的內容請查看關於正則表達式的教程
接下來點擊'Show advanced options',顯示高級選項來設置規則的應用范圍
圖6 -顯示高級選項
在Apply to中可以選擇規則的應用范圍,默認勾選的是Main window一項,重定向地址欄。這里我們只勾選Script一項,將規則應用到外部腳本中
最后點擊Save來保存,就會得到與圖3一樣的頁面
再次加載文章開頭提到的Stackoverflow網站
圖7 -成功加載Stackoverflow網站
大功告成!
使用Import來導入設置
將以下代碼隨便復制到一個新文件中
{ "createdBy": "Redirector v3.1.0", "createdAt": "2016-09-10T13:29:02.323Z", "redirects": [ { "description": "Ajax", "exampleUrl": "http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js", "exampleResult": "http://ajax.lug.ustc.edu.cn/ajax/libs/jquery/1.7.1/jquery.min.js", "error": null, "includePattern": "*ajax.googleapis.com*", "excludePattern": "", "redirectUrl": "$1ajax.lug.ustc.edu.cn$2", "patternType": "W", "processMatches": "noProcessing", "disabled": false, "appliesTo": [ "script" ] } ] }
之后使用設置頁面的Import功能導入該文件就可以加載與上文相同的重定向規則
如果你喜歡本文,請點擊下方推薦按鈕