Linux web反向代理

2.反向代理
問題
通過配置代理服務器,實現以下目標:
1)代理服務器可以將遠程的Web服務器頁面緩存在本地
2)代理服務器端口設置爲80端口
3)用戶通過訪問代理服務器即可獲得遠程Web服務器上的頁面內容
4)遠程Web服務器對客戶端用戶是透明的
5)利用緩存機制提高網站的響應速度
方案
使用4臺RHEL6虛擬機,其中一臺作爲Squid代理服務器,該服務器用來連接兩個網段,因此需要配置兩塊網卡,地址分別爲192.168.4.5和172.16.0.254。一臺作爲客戶端測試主機,IP地址爲172.16.0.100。一臺Web服務器,地址爲192.168.4.205,該Web服務器爲其他代理提供Web數據源,拓撲如圖-5所示。
在這裏插入圖片描述
圖-5
步驟
實現此案例需要按照如下步驟進行。
步驟一:構建web服務器
1)使用yum安裝web軟件包
[root@web ~]# yum -y install httpd
… …
[root@web ~]# rpm -q httpd
httpd-2.2.15-29.el6_4.x86_64
2)啓用httpd服務,並設爲開機自動運行
[root@web ~]# service httpd restart ; chkconfig httpd on
Stopping httpd: [FAILED]
Starting httpd: [OK]
httpd服務默認通過TCP 80端口監聽客戶端請求:
[root@web ~]# netstat -anptu | grep httpd
tcp 0 0 :::80 ::? LISTEN 2813/httpd
3)爲Web訪問建立測試文件
在網站根目錄/var/www/html下創建一個名爲index.html的首頁文件:
[root@web ~]# cat /var/www/html/index.html

Welcome

www.tarena.com

步驟二:部署Squid代理服務器 1)使用yum安裝squid軟件包: [root@svr5 ~]# yum -y install squid .. .. [root@svr5 ~]# rpm -q squid squid-3.1.10-19.el6_4.x86_64 2)修改/etc/squid/squid.conf配置文件: [root@svr5 ~]# vim /etc/squid/squid.conf .. .. http_port 80 vhost //設置反向代理 visible_hostname svr5.tarena.com //設置主機名 cache_peer 172.16.16.254 parent 80 0 originserver cache_mem 128 MB //內存緩存 cache_dir ufs /var/spool/squid 200 16 128 //硬盤緩存 http_access allow localnet //允許本機所在網絡中的所有主機使用代理服務器 3)啓動squid服務,並設置爲開機啓動: [root@svr5 ~]# service squid restart; chkconfing squid on Stopping squid: [FAILED] init_cache_dir /var/spool/squid... Starting squid: . [ OK ] 4)squid服務通過TCP 80端口監聽客戶端請求: [root@svr5 ~]# netstat -anptu | grep 80 tcp 0 0 :::80 :::* LISTEN 3213/(squid) 步驟三:客戶端測試 1)通過/etc/hosts文件,配置域名解析,將域名解析爲Squid服務器IP地址 [root@client ~]# cat /etc/hosts .. .. 172.16.0.254 www.tarena.com 2)客戶端開啓瀏覽器,分別訪問兩個不同的域名站點 [root@client ~]# firefox http://www.tarena.com
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章