1. 程式人生 > >linux 下的Squid 代理快取伺服器

linux 下的Squid 代理快取伺服器

        Squid是一個高效能的代理快取伺服器,Squid支援FTP、gopher、HTTPS和HTTP協議。和一般的代理快取軟體不同,Squid用一個單獨的、非模組化的、I/O驅動的程序來處理所有的客戶端請求。
        它是這樣實現其功能的,接受來自人們需要下載的目標(object)的請求並適當地處理這些請求。也就是說,如果一個人想下載一web頁面,他請求Squid為他取得這個頁面。Squid隨之連線到遠端伺服器(比如:http://squid.nlanr.net/)並向這個頁面發出請求。然後,Squid顯式地聚集資料到客戶端機器,而且同時複製一份。當下一次有人需要同一頁面時,Squid可以簡單地從磁碟中讀到它,那樣資料迅即就會傳輸到客戶機上。當前的Squid可以處理HTTP,FTP,GOPHER,SSL和WAIS等協議。但它不能處理如POP,NNTP,RealAudio以及其它型別的東西。

一、Squid 正向代理

1. 安裝服務軟體

2. 在服務端配置網路引數,使得服務端可以上網

配置閘道器為可以上網的主機ip 地址

然後重啟網路

3. 配置服務端Squid 的主配置檔案

將56行設定為允許,並取消62行的註釋

然後啟動服務

關閉防火牆

4. 在一個不能連外網的主機上進行測試

在該測試機的瀏覽器上手動設定代理

設定代理ip 地址為服務端的ip 地址,埠號為3128,並勾選將此設定對所有代理生效

此時在測試機的瀏覽器中便可上網,網頁資訊都是從Squid 伺服器中獲得的

但在測試機的控制檯依然無法ping 通域名

二、Squid 反向代理

1. 編輯服務端Squid 配置檔案

設定虛擬主機和虛擬埠,通過80 埠快取172.25.254.100 上的資料

2. 重啟服務進行測試

在測試機上設定本地解析地址為Squid 服務端的ip 地址

然後在測試端的瀏覽器上輸入域名檢視結果

3. Squid 反向代理的輪詢

先準備好兩臺配置好Apache 服務的主機,和一臺配置好Squid 服務的主機

在Squid 服務端修改配置檔案,對兩臺Apache 服務主機進行代理

然後重啟服務

在測試端修改本地解析為 Squid 服務的ip 地址

然後在瀏覽器中進行測試

發現重新整理網頁,會顯示被代理的不同Apache 服務主機發布的資訊

4. 修改權重

在配置檔案中修改被代理的Apache 服務主機(ip 地址為100)的權重為2,則每訪問一次ip 地址為82的主機,下兩次就會連續訪問ip 地址為100的主機

重啟服務進行測試

web1 每顯示兩次,才會顯示一次web2

三、文字形式的瀏覽器

安裝該軟體

然後利用命令進行訪問

顯示網頁內容