一个 tomcat 下如何部署多个项目?附详细步骤

一个tomcat下如何部署多个项目?Linux跟windows系统下的步骤都差不多,以下linux系统下部署为例。windows系统下部署同理。

一、不修改端口,部署多个项目

清楚tomcat目录结构的应该都知道,项目包是放在webapps目录下的,那能否在同一个tomcat的webapps目录下运行多个不同项目呢?答案是可以的。

1、将多个项目包放入webapps文件夹下

2、修改conf下的server.xml文件,新增web应用节点

定位到server.xml文件结束标签之前,新增web应用节点,一个节点代表一个项目

   <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />

        <!-- 配置web应用 -->
        <Context docBase="erp" path="/erp" reloadble="true" />
        <Context docBase="ningmengban" path="/ningmengban" reloadble="true" />
      </Host>
    </Engine>
  </Service>
</Server> 

以上新增内容说明:
docBase属性: 指定Web应用的文件路径,可以是绝对路径,也可以给定相对路径
path属性: 指定访问该Web应用的URL入口
reloadable属性: 若这个属性为true,tomcat服务器在运行状态下会监视WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到class文件被更新,服务器会自动重新加载Web应用。

注意:每个项目本身的一些配置文件修改,例如数据库连接信息配置,请自行配置好,这里不做赘述。

另外,以上第2步server.xml中新增节点不是必须的,可以直接进入第3步,也ok。

3、重启tomcat,浏览器输入访问项目地址

注意:以开发提供的项目部署文档说明中地址为准,去进行访问测试;

浏览器访问第一个项目地址ip:8080/ningmengban/app/register/regiseter.html,成功

浏览器访问第二个项目地址ip:8080/erp/regist,成功

二、修改端口,部署多个项目

我们已经清楚一个webapps下面可多个项目。另外一种思路则是,可否多个webapps,每个webapps下面运行一个项目?答案也是可以的。

1、tomcat目下复制webapps目录,并重命名为webapps1

Tomcat下webapps已经部署了一个项目,复制webapps重命名为webapps1,并在该文件夹下删除第一个项目,放第二个项目

2、修改tomcat的conf目下的server.xml文件,设置端口等信息

1)server.xml已有第一个项目的配置信息,现在需要新增第二个项目的配置,在Server节点下,新增Service节点;第2个Service节点复制第1个Service内容

2)复制后,做如下端口等配置修改

<!-- 第二个项目配置 -->
<Service name="Catalina1">

  <!-- 8080为http访问端口,为避免冲突,修改端口 -->
  <Connector port="8081" protocol="HTTP/1.1"
             connectionTimeout="20000"
             redirectPort="8443" />

  <!-- 8009为AJP端口,Apache能通过AJP协议访问Tomcat的8009端口,避免冲突,修改 -->
  <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

  <!-- Engine节点,name修改为Catalina1 -->
  <Engine name="Catalina1" defaultHost="localhost">

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

    <!-- 修改Host节点,appBase修改为webapps1 -->
    <Host name="localhost"  appBase="webapps1"
          unpackWARs="true" autoDeploy="true">

      <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
             prefix="localhost_access_log" suffix=".txt"
             pattern="%h %l %u %t &quot;%r&quot; %s %b" />

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

以上修改信息说明:
Service的name属性修改为Catelina1
http协议访问的Connector port属性修改为8081
AJP协议访问的Connector port属性修改为8010
Engine的name属性修改为Catelina1
Host的appBase属性修改为webapps1

3、重启tomcat,浏览器输入访问项目地址

浏览器访问第一个项目地址ip:8080/ningmengban/app/register/regiseter.html,成功

浏览器访问第二个项目地址ip:8081/erp/regist,成功

原文地址:https://www.cnblogs.com/tudou-22/p/12382886.html

时间: 2024-10-05 13:32:22

一个 tomcat 下如何部署多个项目?附详细步骤的相关文章

tomcat下同时部署两个项目不能正常启动的问题

在部署两个项目,这两个项目都是采用了一个框架,只是业务系统进行了修改.部署的时候发现启动有问题.会报类似下边的错误 Web app root system property already set to different value: 'webapp.root' = [/home/user/tomcat/webapps/project1/] instead of [/home/user/tomcat/webapps/project2/] - Choose unique values for t

一个tomcat下部署多个项目或一个服务器部署多个tomcat

最近需要把两个项目同时部署到服务器上,于是研究了一下,页借鉴了很多别人的方法,把过程记录下来,以儆效尤. 目录: 1,一个tomcat下同时部署两个项目(多个项目可以参考) 1.1项目都放在webapps内(共用一个端口) 1)把两个项目都放在webapps下. 2)处理重复jar包. 3)tomcat端口默认为8080.如果想修改可以去conf下的server.xml中进行修改 4)启动tomcat 1.2建立多个类似于webapps的文件夹,通过conf下的server.xml进行配置(每个

tomcat中同时部署两个项目的问题

其中一个项目总是无法访问. 参考这两篇文章: 1. tomcat中同时部署两个项目的问题 2. java.lang.IllegalStateException: Web app root system property already set to different value 解决方案:为每个项目的web.xml中添加 <context-param> <param-name>webAppRootKey</param-name> <param-value>

(转载)Solr4.x在Tomcat下的部署

Step1 下载安装包: 下载最新版本安装包 点击此处下载Tomcat    点击此处下载Solr Step2 解压: 解压Tomcat和Solr Step3 拷贝War包: 拷贝\solr-4.x\dist\solr-4.6.0.war到 \tomcat-7.x\webapps\下,并将solr-4.x.war改名为solr.war Step4 建立solr_home目录: 将\solr-4.x\example\solr拷贝到任意目录 Step5 拷贝安装文件: 将\solr-4.x\exam

一个Tomcat下部署多个项目异常:org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean 的解决方法

内容简介 在测试服务器上Tomcat下部署两个Spring boot项目,总是一个能启动成功,另一个启动不成功.这两个war包单独部署均能正常启动. 查看日志:启动时报出 org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean 的异常. 本文主要说明这个问题的解决方法(我的情况用下面的方法能解决). 异常信息(部分) Error starting ApplicationCont

log4j和web.xml配置webAppRootKey 的问题(一个tomcat下部署多个应用)

转自:http://blog.csdn.net/arvin_qx/article/details/6829873 在tomcat下部署两个或多个项目时,web.xml文件中最好定义webAppRootKey参数,如果不定义,将会缺省为“webapp.root”,如下: <!-- 应用路径 --> <context-param> <param-name>webAppRootKey</param-name> <param-value>webapp.r

【转载】centos7+tomcat部署JavaWeb项目超详细步骤

我们平时访问的网站大多都是发布在云服务器上的,比如阿里云.腾讯云等.对于新手,尤其是没有接触过linux系统的人而言是比较有困难的,而且至今使用云服务器也是有成本的,很多时候我们可以通过虚拟机自己搭建一个测试服务器来运行我们的javaWeb项目.这里我就从头到尾开始详细的介绍一下如何部署javaWeb项目到centos7上. 总体分为三部分:1.java环境.2.tomcat环境.3.JavaWeb项目部署 一.安装java环境 centos7安装java环境比较简单,我是通过virtualBo

前端代码tomcat下简单部署

软件 filezilla [ftp]  +  visionapp Remote Desktop[远程桌面] (前提:前后端代码分离,如前端angular实现) ftp上传到机器{软件 filezilla,输入ip 账号密码  ssh-端口22} linux下解压 unzip -o tomcat**.zip -d tomcat java --version 加权限 chmod +x *.sh 将前端代码通过ftp上传到 tomcat/webapps 解压代码文件 unzip prjectPorta

配置的好的Apache和PHP语言的环境下,如何在Apache目录下htdocs/html目录下 同时部署两个项目呢

建虚拟目录打开Apache->conf->httpd.conf在最下面粘贴NameVirtualHost 127.0.0.1 <VirtualHost 127.0.0.1> ServerName 虚拟主机名 DocumentRoot "网站绝对目录" <Directory 同上> Options Indexes AllowOverride None Order allow,deny allow from all </Directory>