1. 程式人生 > >Http反響代理

Http反響代理

web服務器 代理服務器

1 案例1:反向代理

1.1 問題

通過配置代理服務器,實現以下目標:

  1. 代理服務器可以將遠程的Web服務器頁面緩存在本地

  2. 代理服務器端口設置為80端口

  3. 用戶通過訪問代理服務器即可獲得遠程Web服務器上的頁面內容

  4. 遠程Web服務器對客戶端用戶是透明的

  5. 利用緩存機制提高網站的響應速度

1.2 方案

使用3臺RHEL7虛擬機,其中一臺作為Squid代理服務器,該服務器用來連接兩個網段,因此需要配置兩塊網卡,地址分別為192.168.4.5和192.168.2.5。一臺作為客戶端測試主機,IP地址為192.168.4.100。一臺Web服務器,地址為192.168.2.100,該Web服務器為其他代理提供Web數據源,拓撲如圖-1所示。

技術分享

1.3 步驟

實現此案例需要按照如下步驟進行。

步驟一:構建web服務器

1)使用yum安裝web軟件包

[[email protected] ~]# yum -y install httpd

[[email protected] ~]# rpm -q httpd
2)啟用httpd服務,並設為開機自動運行

[[email protected]

/* */ ~]# systemctl restart httpd ; systemctl enable httpd

httpd服務默認通過TCP 80端口監聽客戶端請求:

[[email protected] ~]# netstat -anptu | grep 80
tcp6 0 0 :::80 :::* LISTEN 4206/httpd

3)為Web訪問建立測試文件

在網站根目錄/var/www/html下創建一個名為index.html的首頁文件:

[[email protected]

*/ ~]# cat /var/www/html/index.html
<html>
<title>Welcome</title>
<body>
<h1>1176693506</h1>
</body>
</html>

步驟二:部署Squid代理服務器

1)使用yum安裝squid軟件包:

[[email protected] ~]# yum -y install squid
[[email protected] ~]# rpm -q squid
squid-3.3.8-26.el7.x86_64

2)修改/etc/squid/squid.conf配置文件:

[[email protected] ~]# tail -5 /etc/squid/squid.conf
visible_hostname svr5.sumo.com
cache_peer 192.168.2.100 parent 80 0 originserver
cache_mem 128 MB
cache_dir ufs /var/spool/squid 200 16 128
http_access allow all

3)啟動squid服務,並設置為開機啟動:

[[email protected] ~]# systemctl restart squid ; systemctl enable squid

4)squid服務通過TCP 80端口監聽客戶端請求:

[[email protected] ~]# netstat -anptu | grep squid
tcp6 0 0 :::80 :::* LISTEN 3769/(squid-1)

步驟三:客戶端測試

通過/etc/hosts文件,配置域名解析,將域名解析為Squid服務器IP地址

[[email protected] ~]# elinks --dump http://svr5.sumo.com
1176693506

本文出自 “蘇陌兮” 博客,請務必保留此出處http://linuxxd.blog.51cto.com/12849095/1921958

Http反響代理