1.前期準備
想要測試SQUID是否正常,必須要先把這個域名解析到2.2.2.2這個IP上。跟上一章一樣,如果你是網通用戶就不需要做任何操作,DNSPod會給你返回2.2.2.2這個IP。如果你是電信用戶,或者解析出來的IP不是2.2.2.2,那么就要修改系統的hosts表,對應記錄添加進去。跟上一章不一樣,上一章修改的是SQUID服務器的hosts表,你現在需要修改的是你用來測試SQUID的系統的hosts表。
除了修改hosts表外,我們還需要一個名為curl的小工具。一般的Linux/Unix系統都附帶了這個工具,如果使用Windows,那么需要到下面的地址下載一個,并且放到D:(或者其他地方,自己喜歡)。
?curl=win32-nossl(32位系統)
?curl=win64-nossl(64位系統)
下載回來解壓后,我們只需要一個curl.exe。
2.運行SQUID
我們繼續用上一章的方法,用調試方式啟動SQUID
cd /usr/local/SQUID/sbin
./SQUID -Nd 1
然后打開瀏覽器,輸入,看輸出的網頁是否正確。
如果能顯示出正常的頁面,那么說明SQUID已經正常運行了。但我們還需要確認一下,所需要的頁面是否已經被SQUID緩存了。
3.測試SQUID
我們使用curl,輸入下面的命令(Windows用戶請使用命令行來運行curl)
curl -I
HTTP/1.0 200 OK
Date: Sun, 08 Jul 2007 12:16:27 GMT
Server: NaiZhao Web Server/1.0.0
Last-Modified: Wed, 13 Dec 2006 06:11:14 GMT
ETag: "7665b-1983-4417e480"
Accept-Ranges: bytes
Content-Length: 6531
Vary: Accept-Encoding
Content-Type: text/css
Age: 29155
X-Cache: MISS from cnc.naizhao.com
Via: 1.0 cnc.naizhao.com:80 (SQUID/2.6.STABLE13)
Connection: close
我們留意輸出的內容,下面一行內容表示并沒有命中緩存。也就是并不是從緩存中讀取所需文件。一般第一次訪問一個文件的時候,出現MISS是正常的,因為本來文件就不存在于緩存中。
X-Cache: MISS from cnc.naizhao.com
然后,我們重新運行一次命令,繼續看輸出的內容
curl -I
HTTP/1.0 200 OK
Date: Sun, 08 Jul 2007 12:16:27 GMT
Server: NaiZhao Web Server/1.0.0
Last-Modified: Wed, 13 Dec 2006 06:11:14 GMT
ETag: "7665b-1983-4417e480"
Accept-Ranges: bytes
Content-Length: 6531
Vary: Accept-Encoding
Content-Type: text/css
Age: 29155
X-Cache: HIT from cnc.naizhao.com
Via: 1.0 cnc.naizhao.com:80 (SQUID/2.6.STABLE13)
Connection: close
可以看到,這次的輸出已經是HIT了。也就是表示,內容是從緩存中讀取的。
如果第二次訪問仍然是MISS,那么你就要檢查下網頁是否限制了緩存。可以從下面幾個方面入手:
Last-Modified: Wed, 13 Dec 2006 06:11:14 GMT 檢查這行是否每次訪問都變化。如果一直變化,說明頁面是動態的,并不合適SQUID緩存。SQUID在每次請求的時候都會檢查這行,判斷頁面是否已經過期,并且對過期的頁面重新獲取。
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 這行是負責控制緩存。no-store、no-cache、must-revalidate等都是要求SQUID禁止緩存內容,并且在每次請求的時候都去驗證頁面是否過期。
Expires: Thu, 19 Nov 1981 08:52:00 GMT 過期時間如果大于當前時間,也會被認為是頁面已經過期,需要重新獲取。這樣的頁面也不會被緩存。
Pragma: no-cache 這句也是禁止緩存。
大家可以按照上面的內容進行自查自糾,根據實際需求對網站進行修改即可。
確認沒有問題后,我們就可以讓SQUID正式跑起來了。
4.正式運行SQUID
ulimit -Hs 65536
ulimit -n 65536
./SQUID
直接使用上面的命令就可以讓SQUID跑起來了。
跑起來后,輸入看看訪問是否正常。
5.讓SQUID跟隨系統啟動
CentOS讓SQUID跟隨系統啟動很簡單,只需要編輯/etc/rc.local,在最后加上下面內容即可
ulimit -Hs 65536
ulimit -n 65536
/usr/local/SQUID/sbin/SQUID
新聞熱點
疑難解答
圖片精選