快速進去CF(codeforces)的方法

轉自http://user.qzone.qq.com/151677208/blog/1408255495
      
前言
    前陣子打Codeforces(如下簡稱CF),每次比賽的時候都要等待網頁刷新。不是我這裏網速慢,應該是國內的廣泛現象吧。然而最狼狽的一次,當我刷新出題目頁面的時候比賽已經開始5分鐘了,這讓我很苦惱。我也曾經使用過代理超人,訪問加速了一些,然而我每次都必須在比賽前尋找和測試當天最新的國外高匿代理。雖然寫了個程序能夠從網頁上自動提取當日可用代理IP,但驗證上千個IP也須要數分鐘的時間(即便線程開到100),何況能夠刷新網頁而不給你斷網的服務器太少了(通常比賽前網絡通訊正常,然而比賽開始時再次刷新網頁的時候代理服務器就罷工了)。

---------------------------------華麗的分割線--------------------------------- 
 
探索
    後來,因爲穩定性沒法保證,我放棄了代理。我在嘗試分析CF網頁的過程當中找到了一行代碼:
 
<link href='//fonts.googleapis.com/css?family=Cuprum&subset=latin,cyrillic' rel='stylesheet' type='text/css'>
 
    這行代碼意味着CF使用了谷歌字體庫(國內大部分網段對谷歌服務器的訪問速度都比較慢,有時甚至沒法鏈接。從今年六月開始,國內WordPress的站長們也陸續將谷歌字體庫本地化或使用國內鏡像),並在完整加載字體後才能顯示所有網頁內容,不然已經加載出來的內容也不予顯示。
 
    好,問題找到了,如今要解決這個問題。最簡單的辦法就是在瀏覽器刷新網頁的時候直接查看已經從CF服務器下載的代碼,這個在Chrome中十分常容易辦到的,但卻不方便查看。
 
    考慮到操做的方便程度和網站的穩定性,我打算重定向谷歌服務器。查看過一些網上的資料後,我發現多數尋求解決方案的是WordPress的站長,他們的解決辦法比較複雜,並且是針對服務端的。雖然我不能把這些方案推薦給CF(即便能夠,也只有中國地區可用),可是我發現了一個很好的谷歌字體庫的鏡像。
 
    這個鏡像是360提供的( http://libs.useso.com/),並且國內廣泛反映該服務器穩定性和速度均較好。接下來的問題就是把360的鏡像字體庫「嫁接」到原谷歌字體庫上。一個最簡單的辦法就是修改HOSTS文件(雖然我通常不主張動這個文件,可是像這種永久有效的服務器必要時是可使用的)。

---------------------------------華麗的分割線--------------------------------- 
 
解決方案
    首先找到360鏡像字體庫的IP(183.136.133.218),而後加入HOSTS便可。具體操做步驟以下(Windows用戶):
    1.在資源管理器的地址欄中填寫「%SystemRoot%\System32\drivers\etc」並進入。
    2.右鍵單擊「HOSTS」文件,選擇「屬性」,確保「只讀」未被勾選。
    3.雙擊HOSTS,選擇記事本打開,在最後添加如下兩行(第二行的「fonts.gstatic.com」是CF有時會選取的另外一個谷歌字體庫服務器,我在分析代碼時發現的):


183.136.133.218    fonts.googleapis.com
183.136.133.218    fonts.gstatic.com
 
    【注意:IP與域名之間不是空格,而是製表符('\t'),按tab鍵可輸入】
    4.保存HOSTS文件。
    
    OK,就是這樣了,你如今再上CF是否是感到史無前例的流暢啊?
 
---------------------------------華麗的分割線---------------------------------
相關文章
相關標籤/搜索