2013-09-19 10:51:01
来 源
kejihao
Apache
本文介绍Apache代理服务器的配置方法,希望对于初学Apache服务器相关的朋友有帮助,更多Apache安装、配置、报错处理等资源请本站内搜索。
代理服务器(proxyserver)是安装于防火墙上的应用程序,它把防火墙内部的局域网连接到Intemet上。代理服务器的功能如下。

●监视通过防火墙的数据包并记录传输信息。

●对通过防火墙的数据包地址进行过滤。

●提供文件缓存功能。

代理服务器可以根据所代理的服务类型分类,例如HTtP代理和FFP代理等。我们以HTTP代理为例,介绍代理服务器的功能。当局域网中的客户机使用HTIT代理服务器时,它的HTTP请求将被发送到代理服务器中,而不是直接发送到源地址。如果代理服务器配置了文件缓存功能,在接受到客户请求时,首先在缓存中检查是否有用户需要的内容。如果缓存中没有,就要从HTTP源地址检索,再把相应内容返回给用户。以后,如果用户再请求相同的内容,代理服务器将直接从缓存中提取。

配置ApacheHTTP代理

Apache作为WWW服务器软件,在内部提供了HTFP代理功能。下面我们将介绍Apache代理的配置方法:

(1)修改文件/etc/httpd/conf/httpd.conf,在其中添加与代理和缓存相关的功能。与代理缓存有关的关键字如下所示。

httpa.conf文件中与代理缓存有关的关键字

ProxyRequests On/Off 启用或者禁用Apache代理功能

Proxyremote path URL remote server 定义此代理服务器的远程代理。当用户请求与URL匹配时,就使用remote server作为远程代理服务器。

其中remote server的格式是: protocol://hostname[:port],由于Apache只能代理HTTP服务,所以protocol值恒为HTTP

ProxyPass path URL允许把远程服务器镜像到本地服务器中。这时,本地代理服务器好像是远程代理服务器的一个镜像

ProxyBlock word/hostname/domain 代理服务器过滤功能。在ProxyBlock关键字以后定义了一组词语、节点名称和域名。如果用户的HTYP请求中包含了这里的词语、节点名称或者域名,请求将被过滤掉

CacheRoot directory 代理缓存的根目录

CacheSize size代理缓存大小,以KB为单位

CacheGcInterval time每隔time小时检查缓存区,如果缓存占用空间超过CacheSize设置的上限,就删除文件缓存中的文件最多保存time小时,这里定义了文件的过期时间

CacheLastModifiedFactor factor如果没有定义文件过期时间,就按照下面的公式计算:过期时间=最近一次修改的时间间隔*factor

CacheDirLevels levels缓存中子目录的层数

CacheDirLenSth lenSth代理缓存子目录名的字母数

CacheDefauhExpire time 如果文件是通过一个不支持过期时间的协议获取的,则使用time作为过期时间

NoCache word/hostname/domain 在NoCache关键字以后定义了一组词语、节点名称和域名。包含这些词语、节点名称或者域名的HTFP文件将不被缓存

(2)修改文件/etc/httpd/conL/access.conf,在其中添加对代理目录的访问控制。下面是一个实例。

order deny,allow

deny from all

allow from.company.com

(3)确认CacheRoot关键字指定的缓存目录已经存在。

重新启动hnpd,缓存功能就可以生效了。

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。