CentOS 7 Squid代理服務器反向代理

Squid反向代理

將不一樣的URL請求分發到後臺不一樣的Web服務器上,經過squid反向代理,能夠加速網站的訪問速度,同時互聯網用戶只能看到反向代理服務器的地址,增強網站的訪問安全html

Squid反向代理原理web

Squid反向代理服務器位於本地Web服務器和Internet之間,客戶端請求訪問Web服務器時,DNS將訪問的域名解析爲Squid反向代理服務器的IP地址,客戶端將訪問Squid代理服務器。若是Squid反向代理服務器緩存了該請求的資源,則將該請求的資源返回給客戶端,不然反向代理服務器將向後臺的Web服務器請求資源,而後將應答資源返回給客戶端,同時也將該資源在本地緩存一份,供下一個請求使用vim

實驗環境 : 後端

代理服務器IP(CnetOS7):192.168.94.11(NAT)  192.168.111.11(VMnet3)緩存

客戶端IP(Windows):192.168.111.22(VMnet3)  安全

真實服務器1(CnetOS7):192.168.94.22(NAT)服務器

真實服務器2(CnetOS7):192.168.94.33(NAT)dom

以前作的透明代理的時候作的防火牆策略 , 要把策略清一下 , 把備份的配置文件還原 , 否則測試會出問題測試

[root@squit squid]# vim /etc/squid.conf
# 定義兩個個基於域名的控制列表,分別命名爲web1,web2
acl web1 dstdomain www.damowang.cn
acl web2 dstdomain www.damowang.cn

# 容許以web1,web2爲目標域名的訪問 http_access allow web1 web2
# 將端口監聽在
192.168.94.11的80端口上,accel 指啓用加速模式,vhost,vport用於轉發請求 http_port 192.168.94.11:80 accel vhost vport
# cache_peer 指定後端服務器地址,
80 爲後端服務端口,0 爲 ICP 端口號(多個 Squid 時用),originserver 指定資源服務器,round-robin指使用輪詢方式,weight指的是權重,自由分配,name 指定一個別名 cache_peer 192.168.94.22 parent 80 0 no-query originserver round-robin weight=1 name=web1 cache_peer 192.168.94.33 parent 80 0 no-query originserver round-robin weight=1 name=web2

 

cache_peer_domain web1 web2 www.damowang.cn  # 再4版本以前是用於域名輪詢的 , 如今徹底經過訪問控制來實現  , 若是加上這句  , 檢查語法時會報錯網站

若是用的是新版本的squid 這是須要注意的 

配置Web服務器

[root@web1 ~]# yum -y install httpd
[root@web1 ~]# systemctl start httpd
[root@web1 ~]# echo "<h1>Squid-Web1</h1>" > /var/www/html/index.html

[root@web2 ~]# yum -y install httpd
[root@web2 ~]# systemctl start httpd
[root@web2 ~]# echo "<h1>Squid-Web2</h1>" > /var/www/html/index.html

Windows配置 , 測試

 

 

客戶實際訪問的是代理服務器 , 並不知道真實Web服務器的IP

相關文章
相關標籤/搜索