######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

###緩存請求到的資源的存放路徑以及存放的内容的大小###
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
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,重新整理的時候就會發現内容交替變化
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