码迷,mamicode.com
首页 > Web开发 > 详细

Centos 6.5 apache2.2与tomcat集成多个项目 反向代理设置

时间:2014-11-03 22:44:39      阅读:367      评论:0      收藏:0      [点我收藏+]

标签:style   http   io   color   ar   os   java   sp   文件   

1. 安装apache2.2 参见:访问我其他博文

2.需求概况: 
有2个服务:www.test.com, bbs.test.com。分别对应2个tomcat下的2个web应用。由apache httpd作为互联网接入服务器,在80端口接收对这2个服务的请求。apache httpd再将这2个请求分别对应到不同的后端web服务器(Tomcat)处理。 

3.配置域名映射到本机即127.0.0.1,同时配置service域名 

Java代码   bubuko.com,布布扣
  1. 127.0.0.1    localhost www.test.com www.service.test.com bbs.test.com bbs.service.test.com  


4. 分别在2个tomcat里分别部署一个非常简单的应用。 

第一个tomcat :端口:8080 

编辑$TOMCAT_HOME/conf/server.xml 

添加一个Host 
Java代码   bubuko.com,布布扣
  1. <Host name="www.service.test.com" unpackWARs="true" autoDeploy="true"  
  2. xmlValidation="false" xmlNamespaceAware="false"/>  


再在$TOMCAT_HOME/conf/Catalina下建立一个目录:www.service.test.com 
然后在www.service.test.com目录下建立一个ROOT.xml,内容为: 
Java代码   bubuko.com,布布扣
  1. <Context docBase="/home/mahaibo/app/test"  
  2. privileged="true" antiResourceLocking="false" antiJARLocking="false">  
  3. </Context>  

docBase指向具体的项目路径  

同理第二个tomcat(端口8088)也是一样的做法: 

编辑$TOMCAT_HOME/conf/server.xml 

添加一个Host: 
Java代码   bubuko.com,布布扣
  1. <Host name="bbs.service.test.com" unpackWARs="true" autoDeploy="true"  
  2. xmlValidation="false" xmlNamespaceAware="false"/>  



然后在$TOMCAT_HOME/conf/Catalina下建立一个目录:bbs.service.test.com 

再在bbs.service.test.com目录下建立一个ROOT.xml,内容为: 
Java代码   bubuko.com,布布扣
  1. <Context docBase="/home/mahaibo/app/bbs"  
  2. privileged="true" antiResourceLocking="false" antiJARLocking="false">  
  3. </Context>  

  
5. 分别启动tomcat,可以通过http://www.service.test.com:8080和http://bbs.service.test.com:8088访问 

6. 配置apache httpd.conf文件。 

找到apach/conf/httpd.conf文件,确认下面这些文字行前面没有"#"注释号: 

Java代码   bubuko.com,布布扣
  1. LoadModule proxy_module modules/mod_proxy.so  
  2. LoadModule proxy_ajp_module modules/mod_proxy_ajp.so  
  3. LoadModule proxy_balancer_module modules/mod_proxy_balancer.so  
  4. LoadModule proxy_connect_module modules/mod_proxy_connect.so  
  5. LoadModule proxy_http_module modules/mod_proxy_http.so  
  6. LoadModule proxy_ftp_module modules/mod_proxy_ftp.so  


并增加虚拟主机配置: 
Java代码   bubuko.com,布布扣
  1. NameVirtualHost *:80  
  2. <VirtualHost *:80>  
  3. ServerName www.test.com  
  4. ProxyIOBufferSize 8192  
  5. ProxyRequests Off  
  6. ProxyVia Full  
  7. ProxyPass / http://www.service.test.com:8080/ smax=5 max=20 ttl=120 retry=300  
  8. </VirtualHost>  
  9.   
  10. <VirtualHost *:80>  
  11. ServerName bbs.test.com  
  12. ProxyIOBufferSize 8192  
  13. ProxyRequests Off  
  14. ProxyVia Full  
  15. ProxyPass / http://bbs.service.test.com:8088/ smax=5 max=20 ttl=120 retry=300  
  16. </VirtualHost>  


7.重启apache 

service httpd restart

8.现在可以访问啦。

PS:如果出现设置完还出现端口跟在后面的情况,那就把

ProxyPreserveHost On

加在虚拟主机配置中去,再重启apche就行了。

Centos 6.5 apache2.2与tomcat集成多个项目 反向代理设置

标签:style   http   io   color   ar   os   java   sp   文件   

原文地址:http://my.oschina.net/u/593517/blog/340322

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!