Apache2配置代理服务器

来源:互联网 发布:c语言求1到n的和函数 编辑:程序博客网 时间:2024/04/28 19:54

Apache2配置代理服务器

1.反向代理


设置反向代理后,使得用户一直认为他访问的网页就是位于,他的浏览器上显示的域名上面,事实上,通过设置反向代理,用户对该域名的访问,被代理到后端的任何一台服务器上,然后把响应信息再通过代理返回给用户,整个过程对用户是透明的,用户不需要在自己的电脑上作任何设置。

一般来说,反向代理的应用场景是,提供一个方便的手段,让内部用户能够访问到位于防火墙后面的服务器。也可以用于负载平衡,或者给较慢的后端服务器一个缓冲,甚至,仅仅为了让几台后端的服务器共享同一个URL名称空间。


配置方法:

如果服务器的域名配置为http://example.com,则

#反向代理设置

ProxyPass /ztj/ http://192.168.1.10/ztj/ProxyPassReverse /ztj/ http://192.168.1.10/ztj/

第一行表示,把所有对http://example.com/ztj/ 的访问,从内部代理到http://192.168.1.10/ztj/ 这个地址去处理。

第二行表示,实现修改返回给客户的HTTP Header中的地址参数,以防止暴露后端的服务器地址信息。仅仅修改HTTP Header中的Location, Content-Location 和 URI。在例子中,当服务器端在重新定向对http://192.168.1.10/ztj/bar的请求到 http://192.168.1.10/ztj/quu 时,在该地址发回给客户端前,先修改为 http://example.com/ztj/quu ,然后,再把响应信息发还给客户端。


注意:

如果第一个参数是以 / 结尾的,那么第二个参数也要以 / 结尾,反之亦然,否则会发生不可预料的代理行为。

必须设置ProxyRequests为Off。


更多参数,请参考Apache的官方文档:

http://httpd.apache.org/docs/2.2/zh-cn/mod/mod_proxy.html#proxypass