`
java-boy
  • 浏览: 248384 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Tomcat 多端口,多虚拟主机配置方法

    博客分类:
  • Java
阅读更多

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

优点:1.每个站点相互独立,互相不受干扰。不会因为一个站点繁忙导致,其它站点受影响。

            2.可以对tomcat,做高度自定义。当需要做一些对容器不安全的情况下。为保证其它站点不受影响,可以使用这种情况。如:需要开启自定义线程。

 

缺点:1.浪费系统资源。虽然tomcat占用系统资源很少,但实例过多浪费还是很严重的。由于tomcat有内存溢出的问题,需要改大内存,而这样导致了系统资源的大量浪费。

            2.管理不方便,无论是调优,还是日常的启动,关闭,端口管理。虽然Linux下很多命令很方便,但还是很麻烦。

 

       我曾经发现有的服务器上,最多部署过6个tomcat,内存的浪费可想而知了...

 

       有时真的很羡慕windows上的IIS,我想没几个见过一台windows上跑多个IIS吧?所以我认真的花时间研究了一下,tomcat配置,实际上tomcat支持多端口,多虚拟目录的情况,多个服务的方式,可见tomcat配置很灵活。需要修改conf/server.xml

 

首先是让tomcat监听多个端口:

 

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

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

 

只需填加一个Connector就可以了。

 

         但这种方法有一个缺点是,两个端口处理的东西是一样的,也就是访问8081和8082的内容是一样的。这种适合需要使用指定模个端口的情况。

 

接下来是让tomcat,一个为不同域名服务。

 

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

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

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

      <Host name="www.java.com"  appBase="webapps2"
            unpackWARs="true" autoDeploy="true"
	    xmlValidation="false" xmlNamespaceAware="false">
      </Host>
 </Engine>
 

只需填加一个Host就可以了,appBase需要使用另外一个目录。这样不同域名,访问不同目录。

 

         最后,我们可能希望,Tomcat可以使用不同IP,访问不同目录。除了进程是一个,其它跟俩个实例一样。这个xml比较多,只列出需要的部分。

 

 <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="webapps2"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

      </Host>
    </Engine>
  </Service>

 

       上面是需要新增到xml里面的。就是添加了一个Service。Service name, Engine name,host appBase都需要修改。这样就可以一个tomcat完成俩个实例工作了。

0
1
分享到:
评论
1 楼 plane 2012-06-06  
thanks

相关推荐

    Tomcat基于域名的虚拟主机.doc

    以上步骤涵盖了在Tomcat中设置虚拟主机的基本流程,但在实际操作中还需要特别注意一些细节,例如确保Tomcat服务器监听的端口没有被其他服务占用,以及配置文件中的路径书写是否准确无误。此外,确保在防火墙设置中...

    Tomcat5_x中的虚拟主机配置方法.rar_tomcat_虚拟主机

    本文将详细讲解如何在Tomcat 5.x版本中配置虚拟主机,以便在同一台服务器上运行多个独立的Web应用。 一、虚拟主机的概念 虚拟主机允许在一个物理服务器上设置多个域名或网站,每个域名对应一个独立的应用程序或服务...

    tomcat配置虚拟主机

    - 添加第一个虚拟主机配置: ```xml unpackWARs="true" autoDeploy="true"&gt; directory="logs" prefix="sentom1_access_log." suffix=".txt" pattern="common" resolveHosts="false"/&gt; directory="logs" ...

    tomcat虚拟目录和虚拟主机的配置

    tomcat虚拟目录和虚拟主机的配置。照葫芦画瓢就可以,建议先搞,然后再了解原理。 1.可以一个端口地址后面跟多个web,这个可能软件部署的时候用的比较多 2.也可以一个tomcat配置多个站点,绑定多个域名。这种可能是...

    一个tomcat配置多个端口运行不同项目

    本教程将深入探讨如何配置Apache Tomcat 8.5.11以支持在一个实例中同时运行多个项目,每个项目绑定到不同的端口,以实现资源的有效利用和管理。 首先,我们需要了解Tomcat的基本结构。在解压的`apache-tomcat-...

    绿色版的Tomcat7.0端口已改为9090

    例如,你需要知道如何配置虚拟主机(`&lt;Host&gt;`标签),设置日志文件(`logs`目录下的配置),以及管理应用程序(将WAR文件放入`webapps`目录)。此外,通过`bin`目录下的`startup.sh`(Linux/Mac)或`startup.bat`...

    Apache + Tomcat + jk配置负载均衡以及虚拟主机 实现多域名、多用户同时使用

    ### Apache + Tomcat + JK配置负载均衡及虚拟主机...通过以上步骤,即可实现在Windows平台下使用Apache、Tomcat和JK进行虚拟主机配置和负载均衡设置,从而支持多域名、多用户的同时使用。此方法同样适用于Linux平台。

    IIS5+Tomcat5.0.3整合_配置多站点虚拟主机图解手册(PDF)

    《IIS5+Tomcat5.0.3整合_配置多站点虚拟主机图解手册》是一份详尽的教程,旨在帮助用户理解如何在Windows环境中将Internet Information Services (IIS) 5.0与Apache Tomcat 5.0.3进行整合,并设置多站点虚拟主机。...

    tomcat配置虚拟路径(window)

    标题 "Tomcat配置虚拟路径(Windows)" 涉及到的是在Windows环境下对Apache Tomcat服务器进行虚拟主机配置的方法。Tomcat是Java Servlet和JavaServer Pages(JSP)的开源应用服务器,它允许开发者部署多个Web应用程序...

    IIS5 Tomcat5.0.3整合_配置多站点虚拟主机图解手册(PDF)

    《IIS5与Tomcat5.0.3整合:配置多站点虚拟主机图解手册》是一份详尽的教程,旨在帮助用户理解如何在Windows环境中将IIS5(Internet Information Services 5)与Tomcat 5.0.3集成,以实现更高效地部署和管理多个Web...

    服务器部署多个tomcat方法

    Tomcat 6及以上版本支持虚拟主机,可以在一个Tomcat实例中托管多个域名或应用。这可以通过在`server.xml`的`Host`元素中定义不同的`Engine`和`Context`来实现。不过,这种方法并不适用于完全隔离的多个实例。 ### 6...

    tomcat及其配置文件

    Tomcat的核心配置文件之一是`server.xml`,这个文件位于Tomcat的`conf`目录下,它是Tomcat服务器的全局配置文件,定义了服务器的端口号、数据源、连接器、虚拟主机、Context等关键组件的设置。例如,你可以在这里...

    详解Tomcat配置及使用.docx

    在本文中,我们将详细介绍 Tomcat 的配置及使用,包括启动、关闭、配置端口、虚拟主机配置等。 一、启动和关闭 Tomcat Tomcat 的启动和关闭非常简单。首先,需要设置环境变量 `JAVA_HOME` 为 JDK 安装路径,这样 ...

    nginx+tomcat多域名配置

    - 在Nginx配置文件中,可以通过`server`块来定义不同的虚拟主机,每个虚拟主机对应一个或多个域名。通过`listen`指令指定监听的端口,`server_name`指令设置对应的域名。 3. **Nginx配置示例**: ``` server { ...

    tomcat使用心得

    Tomcat 使用心得 Tomcat 是一个流行的开源Web应用...Tomcat 的使用心得涵盖了服务器配置、应用配置、连接器配置、虚拟主机配置、日志配置和部署配置等多个方面,了解这些配置可以帮助开发者更好地使用Tomcat服务器。

    Tomcat 6.0配置多端口及多域名

    ### Tomcat 6.0 配置多端口及多域名详解 #### 一、问题背景与需求分析 本文档解决的问题是关于如何在Apache Tomcat 6.0(以下简称Tomcat)中配置多端口及多域名的问题。具体的需求为: - 已经存在一个网站,使用...

    一台主机多tomcat配置

    标题提到的“一台主机多Tomcat配置”是指在同一台物理或虚拟主机上部署多个独立运行的Tomcat实例,以便能够同时管理和服务不同的Web应用程序。这种配置在大型企业环境中尤为常见,可以实现资源隔离,提高系统利用率...

Global site tag (gtag.js) - Google Analytics