一个tomcat部署多个项目并通过不同的端口访问
第一步:修改 $TOMCAT_HOMEconfserver.xml文件。
- 复制Service节点,去掉<Connector port="8009"...这个节点
- 新增Service节点的name属性依次修改为Catalina1、Catalina2……
- 新增Service节点的Connector节点port属性依次修改为8001、8002……(根据机器配置未占用端口,这里按顺序为方便)
- 新增Service节点的Host节点appBase属性依次修改为webapps1、webapps2……
下面是新增两个Service节点的配置:
<Connector port="8081" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> <Engine name="Catalina1" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> <Host name="localhost" appBase="webapps1" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/user/local/Tomcat7/webapps1/Menu" debug="0" reloadable="true" /> </Host> </Engine> </Service> <Service name="Catalina2"> <Connector port="8082" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> <Engine name="Catalina2" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> <Host name="localhost" appBase="webapps2" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/user/local/Tomcat7/webapps2/Menu" debug="0" reloadable="true" /> </Host> </Engine> </Service>
黄色字,表示项目访问路径是ip加端口号
第二步:在$TOMCAT_HOME目录下新建文件夹webapps1、webapps2……(目录里包含ROOT子目录),里面分别放不同项目(测试只就简单复制$TOMCAT_HOMEwebappsROOT目录)
第三步:复制$TOMCAT_HOMEconfi目录下的Catalina生成多个副本,并依次命名为Catalina1、Catalina2……
第四步:启动Tomcat测试
第五步:浏览器中一次访问不同端口
为了证明是三个不同的项目,我修改了标题分别一第一个、第二个、第三个