大话人生

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  299 随笔 :: 0 文章 :: 73 评论 :: 0 Trackbacks

如果不加任何修改,在一台服务器上同时运行两个Tomcat服务显然会发生端口冲突。假设现在已经按照正常的方式安装配置好了第一个Tomcat,第二个如何设置呢?以下是使用Tomcat5.5解压版本所做的实验。
解决办法:
1.解压Tomcat到一个新的目录,比如d:\TomcatServer2;
2.新建一个环境变量CATALINA_HOME2,路径为d:\TomcatServer2;
3.编辑Tomcat/bin/startup.bat和catalina.bat,把CATALINA_HOME全部替换成CATALINA_HOME2;
4.编辑Tomcat/conf/server.xml,把8080和8005端口修改成其他数字,比如8888和9999;
5.运行测试。
补充:如果想只运行一个tomcat,可以通过配置多个Service来完成。
假设f:/sss为根目录,test为web应用目录
把下面的代码添加到server.xml的Server节点之后
  <Service name="sss">
 <Connector port="8888" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
 <Connector port="9999" protocol="AJP/1.3" redirectPort="8444" />
 <Engine name="sss" defaultHost="localhost">
  <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
  <Host name="localhost" appBase="f:/sss" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
  <Context docBase="test" path=""/> 
  </Host>
 </Engine>
6.修改serve.xml中的server port,启动同的tomcat,需要设置不同的监听关闭端口。

但是有一个小小的问题是(据说是5.5的bug):子目录不能有与应用名相同的情况。也就是说,test下面不能再有一个test目录。

posted on 2009-09-11 09:00 大话人生 阅读(1243) 评论(0)  编辑 收藏 引用 所属分类: 配置管理
只有注册用户登录后才能发表评论。