一个tomcat可以配置多个web apps,这是众所周知的。当更改了一个web app,想要重新启动的时候,由于所有的web apps都是放在同一个tomcat下的,所以别的web apps也在重启tomcat的期间里停止运行。当有些web apps上线运行之后,有时候并不想也不需要暂停所有的web apps。其实只要把tomcat复制多个就可以了。主要是端口号的修改。另外再加上通过apache连接tomcat的配置。
先说一下,Tomcat的配置。
1.复制tomcat为tomcat_new
2.修改conf/server.xml的端口号:
2.1 找到<Server port="xxxx“ shutdown="shutdown">这一行,把xxxx更改为和原tomcat不一样的端口,比如8015。
2.2 找到protocol="AJP/1.3"所在的Connector,把端口号改为8019(原来的可能是8009)。
3.启动一下tomcat,看看有没有错误发生。
然后是Apache Httpd。
1.修改http.conf,利用Alias访问tomcat里的webapp。增加下列内容:
Alias /newapp /usr/local/tomcat_new/webapps/newapp
<IfModule mod_jk.c>
JkMount /newapp/* newapp
</IfModule>
2.根据需要增加下列内容,以保护app的内容:
<Directory "/usr/local/tomcat_ab/webapps/chieruservice">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Location "/chieruservice/WEB-INF/">
deny from all
</Location>
3.修改workers.properties:
worker.list=ajp13, newapp
增加下列内容:
worker.newapp.port=8019
worker.newapp.host=localhost
worker.newapp.type=ajp13
worker.newapp.lbfactor=50
4.httpd reload或者restart,就可以通过http://youhost/newapp/"""来看看效果了。
Apache Httpd通过mod_jk连接多个Tomcat