Apache反向代理配置(转自http://ruijunsuo.blog.163.com/blog/static/400596322011274914990/)

时间:2022-10-29 00:38:53
反向代理是一个web服务器系统。除了为客户端提供位于本地磁盘上的页面或是由CGI动态生成的页面之外,它还能为客户端提供位于其它web服务器上的web页面,从而使这些页面看起来像是存在于这个代理服务器上一样。
Apache反向代理配置方法如下

1、打开Apache的配置文件httpd.conf,找到下面的内容,将注释去掉,以启动代理模块
 LoadModule proxy_module modules/mod_proxy.so 
 LoadModule proxy_http_module modules/mod_proxy_http.so
2、在配置文件httpd.conf最后添加
 <IfModule mod_proxy.c> 
  ProxyRequests off 
  <Proxy /ps>     
   Order deny,allow 
   Allow from all 
  </Proxy> 
  ProxyPass /ps 
http://127.0.0.1:8080/projects 
  ProxyPassReverse /ps 
http://127.0.0.1
:8080/projects
 </IfModule>

步骤2的功能:访问 http://127.0.0.1/ps/ 时,会重新反向代理访至 http://127.0.0.1:8080/projects 
3、重新启动Apache。

http_proxy介绍

这是利用Apache自带的mod_proxy模块使用代理技术来连接Tomcat。在配置之前请确保是否使用的是2.2.x版本的Apache服务器。因为2.2.x版本对这个模块进行了重写,大大的增强了其功能和稳定性。

http_proxy模式是基于HTTP协议的代理,因此它要求Tomcat必须提供HTTP服务,也就是说必须启用Tomcat的HTTP Connector。一个最简单的配置如下

ProxyPass /images !
ProxyPass /css !
ProxyPass /js !
ProxyPass / http://localhost:8080/

在这个配置中,我们把所有 http://localhost 的请求代理到 http://localhost:8080/ ,这也就是Tomcat的访问地址,除了images、css、js几个目录除外。我们同样可以利用mod_proxy来做负载均衡,再看看下面这个配置

ProxyPass /images !
ProxyPass /css !
ProxyPass /js !

ProxyPass / balancer://example/
<Proxy balancer://example/>
BalancerMember http://server1:8080/
BalancerMember http://server2:8080/
BalancerMember http://server3:8080/
</Proxy>

配置比JK简单多了,而且它也可以通过一个页面来监控集群运行的状态,并做一些简单的维护设置。