天天看點

squid

######squid######

 百度百科:Squid cache(簡稱為Squid)是一個流行的自由軟體(GNU通用公共許可證)的代理伺服器和Web緩存伺服器。Squid有廣泛的用途,從作為網頁伺服器的前置cache伺服器緩存相關請求來提高Web伺服器的速度,到為一組人共享網絡資源而緩存網際網路,域名系統和其他網絡搜尋,到通過過濾流量幫助網絡安全,到區域網路通過代理上網。Squid主要設計用于在Linux一類系統運作。 

老李所講:squid是一種高性能的代理緩存伺服器,分為正向代理和反向代理,正向代理就是×××,反向代理指web服務其加速,就是指如果一個人想要下載下傳一web頁面,他請求squid為他取得這個頁面。squid随之連接配接到遠端伺服器并向這個頁面送出請求。然後squid再把資料到用戶端伺服器,同時複制一份。當下一次有人需要同一個頁面時,squid可以簡單地從磁盤上讀到它,這樣資料很快就會傳輸到客戶主機上。

一 反向代理:

用戶端請求通路web服務時,dns将通路的域名解析為squid反向代理伺服器的ip位址,這樣用戶端的url請求将被發送到反向代理伺服器。如果squid反向代理伺服器中緩存了該請求的資源,則将該請求直接傳回給用戶端,否則squid反向代理伺服器将向背景web伺服器請求資源,然後将請求的應答傳回給用戶端,同時也将該應答緩存在本地,給下一個情求者使用。

1) yum install squid -y

2) systemctl start squid

3) systemctl stop firewalld

4) netstat -antlpe | grep squid               ###檢視squid的端口###

tcp6       0      0 :::3128                 :::*                    LISTEN      0          219934     1856/(squid-1)     

5) vim /etc/squid/squid.conf

squid

###緩存請求到的資源的存放路徑以及存放的内容的大小###

56 http_access allow all                       ###允許所有人通路###

59 http_port 80 vhost vport           ###端口為80,虛拟主機,虛拟端口##

60 cache_peer 172.25.254.212 parent 80 0 no-query originserver name=wb1 round-robin        

61

62 cache_peer 172.25.254.12 parent 80 0 no-query originserver name=wb2 round-robin

63 cache_peer_domain www.westos.com wb1 wb2

###用戶端發出的請求如果為www.westos.com,則squid向172.25.254.212的80端口或者172.25.254.12的80端口通過輪詢的方式發送請求###

66 cache_dir ufs /var/spool/squid 100 16 256

squid

name=wb1:      ###表示cache——peer的一個别名###

80      :       ###web伺服器的端口###     

0       :     ###web伺服器沒有icp端口,是以設為0。如果是squid則指若該squid損壞了,不通過icp查詢接替的squid,如果要查詢接替的寫3130##

172.25.254.12 parent                ###指父節點###

172.25.254.212 parent               ###指父節點###

no-query                    ##直接拿,不查詢

round-robin :指squid通過輪詢的方式将請求發到其中一台父節點

originserver :指名是源伺服器

6) systemctl restart squid.service

測試:

在安裝了squid的伺服器上先進行本地解析:

vim /etc/hosts

172.25.254.112   www.westos.com

然後再在firefox輸入www.westos.com,重新整理的時候就會發現内容交替變化

squid
squid

cache_peer 172.25.254.212 parent 80 0 no-query originserver name=wb1 round-robin  weight=3      

cache_peer 172.25.254.12 parent 80 0 no-query originserver name=wb2 round-robin  weight=1

###指通路172.25.254.212三次,再通路172.25.254.12一次,如此循環###

二 正向代理: 

cache_dir ufs /var/spool/squid 100 16 256        ###緩存請求到的資源的存放路徑以及存放的内容的大小###

6) systemctl restart squid.service                   ###重新開機服務###

客戶主機上:

firefox : edit--> preferences -->

advanced --> network

squid