首页 新闻 会员 周边 捐助

如何使用apache集成不同机器上的tomcat

0
悬赏园豆:15 [已解决问题] 解决于 2013-08-15 12:17

想达到以下效果

1、Apache安装在服务器192.168.0.10上,使用的mod_jk来实现转发

2、tomcat1安装在192.168.0.11,tomcat2安装在192.168.0.12上

访问http://192.168.0.10/app1时访问tomcat1上的应用app1,访问http://192.168.0.10/app2时访问tomcat2

 

我的配置如下:

http.conf配置

LoadModule jk_module modules/mod_jk.so   
JkWorkersFile conf/workers.properties   
JkLogFile logs/mod_jk.log   
JkLogLevel info
JkMount /app1/* app1
JkMount /app2/* app2

 

workers.properties

#多个虚拟主机
worker.list=app1,app2           

worker.app1.port=8009            
worker.app1.host=192.168.0.11    
worker.app1.type=ajp13        
worker.app1.lbfactor=1        


worker.app2.port=8009           
worker.app2.host=192.168.0.12    
worker.app2.type=ajp13        
worker.app2.lbfactor=1       

使用http://192.168.0.10/app1和http://192.168.0.10/app2 均出现404错误。

将配置更改为: 

JkMount /* app1
#JkMount /app2/* app2 

可以正常访问app1

请指导一下如果要到达我想要的效果怎么进行配置?

泱泱的主页 泱泱 | 初学一级 | 园豆:2
提问于:2013-07-16 11:11
< >
分享
最佳答案
0

再加一个配置文件,用来做路径映射

uriworkermap.properties

收获园豆:7
BomWu | 菜鸟二级 |园豆:209 | 2013-07-22 11:25

增加了没有起作用

泱泱 | 园豆:2 (初学一级) | 2013-07-22 11:35
其他回答(2)
0

你的负载控制器如何配置的?

controller

收获园豆:8
Beyond-bit | 园豆:2885 (老鸟四级) | 2013-07-16 11:44

只需要apache做转发,不需要做负载均衡

支持(0) 反对(0) 泱泱 | 园豆:2 (初学一级) | 2013-07-16 12:13

@泱泱: 

修改安装目录下的 conf/httpd.conf 文件,将以下两行前的注释字符 # 去掉。

#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_http_module modules/mod_proxy_http.so

在这个配置文件最后,加上

ProxyPass /app1 http://<tomcat_server_address>:port/url1

ProxyPassReverse /app1 http://<tomcat_server_address>:port/url1

保存配置文件后重新启动 Apache 就可以了。

 

 

ps:这里的app1和url1[就是tomcat下的工程目录一直就可以解决这个问题]

支持(0) 反对(0) Beyond-bit | 园豆:2885 (老鸟四级) | 2013-07-16 13:34

@Beyond-bit: 这种方式是通过代理实现的,使用mod_jk进行转发怎么实现这种效果

支持(0) 反对(0) 泱泱 | 园豆:2 (初学一级) | 2013-07-22 11:35
0

使用proxy,添加配置

ProxyRequests Off
ProxyPreserveHost On
实现功能
泱泱 | 园豆:2 (初学一级) | 2013-08-15 11:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册