StackOverflow是一個面向程序員的技術問答平台。可是在不翻牆的情況下,瀏覽StackOverflow是一件讓人極不舒服的事情,常常需要等待數十秒頁面才慢慢顯示出來。本文我教大家一種能夠流暢地使用StackOverflow的小技巧。
在不使用任何vpn的情況下,我們打開StackOverflow,以下是我用Chrome開發者工具看到的這個過程:

很明顯jquery.min.js請求超時,居然花了21.02s!點開之后我們便找到了請求超時的原因了:

ajax.googleapis.com是谷歌提供的CDN服務,由於google被牆,因此我們是無法請求到這個js庫的。雖然國內也有許多CDN服務,例如360、百度、七牛雲等都提供了JavaScript庫的CDN加速服務,但是StackOverFlow並沒有考慮到我們國內開發者的特殊情況,給我們選用國內的公共JS庫。因此我們打開StackOverFlow的時候大部分時間都是在等待ajax.googleapis.com的響應。
在牆內請求ajax.googleapis.com是不可能的了,我們也不可能修改StackOverFlow的源碼調用國內服務商提供的服務。但是我可以控制ajax.googleapis.com域名在我本地被解析到哪個IP上!這里我們就使用hosts文件給ajax.googleapis.com重定向到本地,到時候瀏覽器請求ajax.googleapis.com的時候就不需要先去DNS解析了。在hosts文件末尾加上這么一行即可:
127.0.0.1 ajax.googleapis.com
之后使用“ipconfig /flushdns”這個命令刷新一下本地的DNS緩存。ping一下ajax.googleapis.com,應該能返回127.0.0.1:

現在ajax.googleapis.com已經被解析到本地,但是我們還缺一個web服務器。用自帶的IIS是一種方法,但是有點高山炮打蚊子的意思。我選擇的是一款比較小的軟件HTTP FILE SERIVE,只有700kb,不過已經足夠使用了(具體選擇什么,你可以百度找去關鍵字 mini HTTP 太多選擇了)。
首先下載jquery.min.js文件到本地,我已經傳到我的博客上了,這是鏈接:http://files.cnblogs.com/files/ittinybird/jquery.min.js。然后再按照前面HTTP請求中的“http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js”,構造出本地的web服務器的文件路徑,確保瀏覽器中訪問時能夠正確找到文件:

到現在,這個jquery庫在本地CDN服務就已經搞定了。
這是我測試時的訪問效果,怎么樣夠快吧!如果你覺得夠快,不妨給個贊吧,哈哈。快來試試吧

收到各位網友的熱心的分享,現在我更新出來一些其他的方法:
1.使用fiddler重定向,可以將http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js 替換成自己的jquery.min.js所在的url。(chrome瀏覽器有插件)
2.把上文中的127.0.0.1 直接換成103.7.200.79 ,不需要本地搭設服務器了。
3.chrome插件 gooreplacer(需翻牆)。這是中科大的API。
