Tomcat下搭建同IP不同端口的多站点

环境:Tomcat7.0.55
Tomcat下搭建同IP不同端口的多站点

Tomcat多使用在开发环境里,但有时也做生产环境。在生产环境下多会碰到,需要在一个tomcat下放置多个站点的情况。有时还需要同时打开多个不同的端口,接受多个域名请求的情况。通常这种情况会开启多个tomcat实例。这种方法有如下利弊:

优点:1.每个站点相互独立,互相不受干扰。不会因为一个站点繁忙导致,其它站点受影响。2.可以对tomcat,做高度自定义。当需要做一些对容器不安全的情况下。为保证其它站点不受影响,可以使用这种情况。如:需要开启自定义线程。

缺点:1.浪费系统资源,虽然tomcat占用系统资源很少,但实例过多的话浪费还是很严重的。由于tomcat有内存溢出的问题,需要改大内存,这样就导致系统资源的大量浪费。2.管理不方便,无论是调优,还是日常的启动,关闭,端口管理。虽然linux下很多命令很方便,但还是很麻烦。

此段转载于http://java-boy.iteye.com/blog/588290,只引用它上面的文字描述部分,下面的操作都是我个人的实际情况来做的操作

在修改配置文件之前,注意先备份一份!
打开配置文件server.xml
在最后添加一个service,代码如下:

<Service name="Catalina2">  

   <Connector port="8082" protocol="HTTP/1.1"  
              connectionTimeout="20000"  
              redirectPort="8443" />  

   <Engine name="Catalina2" defaultHost="localhost">  

     <Realm className="org.apache.catalina.realm.UserDatabaseRealm"  
            resourceName="UserDatabase"/>  

     <Host name="localhost"  appBase="webapps_two"  
           unpackWARs="true" autoDeploy="true"  
           xmlValidation="false" xmlNamespaceAware="false">  

     Host>  
   Engine>  
 Service>

以上代码即可实现创建一个新的服务Ctalina2,端口为8082,appBase是
Tomcat下搭建同IP不同端口的多站点_第1张图片
图片里面的webapps_two,得自己新建一个
然后重启Tomcat服务,即可访问 http://localhost:8082的站点
如果访问失败,有可能是防火墙的原因
在防火墙高级设置-入站规则-新建规则 里面添加可访问8082这个端口的规则

你可能感兴趣的:(Tomcat)