代理服务器可以在自己的缓冲区中存储被请求的内容,当这些信息再次被请求的时候,代理服务器就无需再从远程服务器上取了,这样代理服务器就减轻了网络的瓶颈问题。大家知道,Apache不仅可作为Web服务器,它还包含了代理服务器(Proxy Server)的功能。因此Apache可以配置成代理服务器,我们根据实际需要,可以配置成为正向和逆(反)向代理。
正向代理是一个能使我们的浏览器连接一个平时无法访问的远端网络的媒介。一个正向代理也能用于缓冲数据,以降低正向代理和远端web服务器之间的负载。逆(反)向代理是一个web服务器系统。除了为客户端提供位于本地磁盘上的页面或是由CGI动态生成的页面之外,它还能为客户端提供位于其它web服务器上的web页面,从而使这些页面看起来像是存在于这个代理服务器上一样。
为了允许Apache作为代理服务器,需要将ProxyRequests设为On,所有请求均可由这台代理服务器代理服务。然后根据我们希望代理服务器做什么而增加什么附加配置。无论希望做什么,我们所选的代理配置都应该放入一个特殊的<Directory>容器中。
下面是在apache的配置文件httpd.conf简单说明:……… ProxyRequests On <Directory proxy:*> ……… </Directory> ………
LoadModule proxy_module modules/libproxy.so ←加载proxy模块
AddModule mod_proxy.c ←增加mod_proxy.c模块
<IfModule mod_proxy.c> ←如果前面加入此模块,则启用里面的设置
ProxyRequests On ←设为On表示启用代理服务
<Directory proxy:*>
Order deny,allow
Deny from all
Allow from .ghq.com ←将允许使用代理服务的网站名称或IP地址填入,此例表示凡来自ghq.com域的计算机都可使用,也可用IP来表示,如202.102.24.表示凡是IP以202.102.24开头的都可使用</Directory>
ProxyVia On ←设为On表示使用Apache服务器的启动或关闭功能
CacheRoot ''/var/cache/httpd'' ←此目录存放已加载的网页
CacheSize 5000 ←默认的Cache只有5KB,根据硬盘空间大小来设置,建议设大一点,此处设为5000KB
CacheGcInterval 4 ←设置检查Cache的间隔时间,单位以小时计算,默认值为4小时
CacheMaxExpire 24 ←设置保存期限,单位以小时计算,决定Cache中的数据可存放多久,默认为24小时
CacheLastModifiedFactor 0.1 ←指定一个数值因子,以便计算过期时限。
CacheDefaultExpire 1 ←给予默认的过期时限,单位以小时计算,这里设置为1小时
</IfModule>
修改好上面的配置后,重新启动Apache服务器,即可提供代理服务。