Squid代理服務器是一種緩存服務器,通常分爲正向代理和反向代理。linux
一、正向代理瀏覽器
客戶端由於網絡或者其餘的問題,不能訪問到一臺Apache服務器,若是要訪問到,則須要經過一臺中間的代理服務器,這就是Squid的正向代理。緩存
Squid代理服務器能夠訪問到這個Apache服務器,而且緩存訪問到的內容,再將緩存的內容給客戶端看。服務器
爲了演示須要,本文中主機"double"有兩個網卡,一個IP爲"172.25.254.202",一個IP爲"172.25.2.202"。主機"single"的IP爲"172.25.2.102"。Apache服務器爲"172.25.254.2"。"double"能夠訪問到Apache,且能夠鏈接到"single"。"single"只能鏈接到"double",不能訪問到Apache。網絡
本文中的Squid代理服務器爲"double",以使用"yum install squid -y"裝好Squid服務,爲了方便,直接關閉防火牆。post
正向代理服務器的配置以下:ui
在Squid服務器端配置。編輯Squid的配置文件"/etc/squid/squid.conf",將第56行的"deny"改成"allow"。將第62行的註釋去掉。完成後重啓服務。spa
在客戶端配置。在客戶端打開瀏覽器"firefox",點擊左上角的"Edit"下的"Perferences",點擊最後的"Advanced"下的"Network",在"Connetion"後點擊"Settings"。按照下圖輸入IP和端口號,IP是Squid服務器中和本身一個網段的IP,端口號是3128。.net
完成上述配置後,在"single"客戶端的瀏覽器中從新輸入"172.25.254.2",就能夠看到這個網頁了。firefox
正向代理客戶端訪問的是Squid服務器的緩存,適用於客戶端不能直接訪問目標主頁,須要一箇中間服務器Squid。
二、反向代理
反向代理是客戶端訪問的目標是Squid服務器,Squid服務器經過訪問有Apache的主機並緩存其網頁內容,再反饋給客戶端,客戶端看到的依舊是Squid服務器的緩存,可是與正向代理不一樣的是,反向代理中客戶端並不知道有Apache主機的存在,而直接訪問Squid服務器,並且客戶端不須要本身進行設置。反向代理一般用於Apache的訪問加速和減少Apache主機的訪問壓力。
反向代理服務器的配置以下:
在Squid服務器端配置。編輯配置文件"/etc/squid/squid.conf",將第59行的"3128"改成"80",並在後面加上"vhost vport",在第58行添加"cache_peer 172.25.254.2 parent 80 0 proxy-only"。完成後重啓"squid"服務。
反向代理不須要在客戶端進行配置。
須要注意的是Squid服務器上並無Apache。
完成上述配置後,在客戶端的瀏覽器中,直接輸入要訪問的Squid服務器"172.25.2.202",則能夠看到Apache主機"172.25.254.2"的主頁。
上述就是Squid代理服務器中經常使用的正向和反向代理,這種代理服務器在網絡中很廣泛。