技术开发 频道

[应用]Apache服务器之代理服务

    前向代理服务器通常位于用户主机和要访问的远程网络之间。它从远程服务器取得所要求的资源,然后返回给用户,同时存在磁盘上,以供下次使用。在这种情况下,客户端的主机知道它们正在使用代理服务器,因为每个主机都必须配置为使用代理服务器。

    例如,必须告诉WWW浏览器使用代理服务器,它才能使用代理服务器。所有的远程请求都通过代理服务器传输。这类代理服务器也称为缓冲代理服务器。逆(反)向服务器也可以缓冲数据,但它的作用则与前向服务器相反。

    前向代理服务器的结构如下图3所示:
  

图3 前向代理服务器


    Apache模块 mod_proxy实现了Apache的代理/网关。它实现了以下规范的代理FTP, CONNECT(用于SSL), HTTP/0.9, HTTP/1.0,和 HTTP/1.1。此模块经配置后可用上述或其它协议连接其它代理模块。

    此模块在Apache 1.1.x中处于试验阶段,而在Apache v1.2.x和Apache v1.3.x中进行了改良并去除了一些bug。然后在Apache v2.0中进行了大的修整。现在协议的支持已经升级到HTTP/1.1,并支持了过滤器。

    Apache的mod_proxy在使用ProxyRemote指令时,可以看作是一个正向代理。ProxyRemote 指令定义了此代理的远端代理。match可以是远端服务器支持的URL形式的名称,或是远端服务器使用的部分URL,或是'*'以代表服务器可以接受所有的请求。remote-server是远端服务器的部分URL。语法为:
    remote-server = protocol://hostname[:port]
    protocol是与远端服务器交换信息时使用的协议;本模块暂时只支持"http"。举例如下:
    ProxyRemote http://ghq.com/ http://mirrorghq.com:8888
    ProxyRemote * http://study.com

0
相关文章