想达到以下效果
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
请指导一下如果要到达我想要的效果怎么进行配置?
你的负载控制器如何配置的?
controller
只需要apache做转发,不需要做负载均衡
@泱泱:
修改安装目录下的 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下的工程目录一直就可以解决这个问题]
@Beyond-bit: 这种方式是通过代理实现的,使用mod_jk进行转发怎么实现这种效果
使用proxy,添加配置