精华内容
下载资源
问答
  • Tomcat7部署多个Web项目的方法-有图有真相,不下你后悔。
  • Tomcat 部署多个web项目

    千次阅读 2017-06-22 16:31:58
    在一个tomcat中部署多个web项目,一般只需要简单的將web程序放到tomcat安装目录/webapps中即可,但部署springboot项目,却另有操作。

    环境

    Centos 7
    Tomcat-8
    Web项目1:java web 入门学习项目
    Web项目2:spring boot /maven 构建


    提纲

    在一个tomcat中部署多个web项目,一般只需要简单的將web程序放到tomcat安装目录/webapps中即可,但是我安装的时候遇见了一些问题,在此记录便于以后查询,若有问题欢迎道友指正,不胜感激^.^


    tomcat配置,三种方法

    Tomcat安装略过

    1. 基础做法

    直接將项目放到webapps中即可,重启tomcat浏览器访问即可;

    特别说明:在安装tomcat的时候,没有更改这个默认的存放项目的位置。Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。所以可以将程序打包成一个 war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成一个同名的文件夹。一个war包就是有特性格式的jar包,它是将一个web程序的所有内容进行压缩得到。
    修改默认的项目存放位置:修改tomcat安装目录/conf/server.xml

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

    host节点中appBase更改为自己存放项目的目录即可,unpackWARs表明是否在启动时是否自动解压war包

    2. 升级做法

    tomcat安装目录/conf/server.xml指定项目位置。

    在Tomcat的配置文件中,一个Web应用就是一个特定的Context,可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建一个Context,内容如下

    <Context path="/web1" docBase="D:\我存放第一个web项目的目录" debug="0" privileged="true"></Context>
    <Context path="/web2" reloadable="true" docBase="D:\我存放第二个web项目的目录"/>
    

    Path是浏览器访问时输入的request路径,我写得和项目.war包名相同;docBase 是存放应用程序的物理路径

    3.推荐做法

    不用修改conf/server.xml文件,直接在tomcat安装目录/conf/Catalina/localhost目录下创建配置文件,文件名和request路径名相同,和war包名相同,后缀为.xml,如web1.xml,web2.xml
    然后在web1.xml文件中写的类容为:

    <Context path="/hello" docBase="D:\程序web1的目录" debug="0" privileged="true"></Context>
    

    Path值和文件名相同,即等于request路劲。
    然后web2中的类容一样,只是path和docBase做相应更改即可,如果以后有更多项目,直接增加相应的文件即可。
    服务器端运行的项目名称为path,外部访问的URL则使用XML的文件名。这个方法很方便的隐藏了项目的名称,对一些项目名称被固定不能更换,但外部访问时又想换个路径,非常有效

    网址无法打开,查看日志,显示
    Unable to add the resource at [/WEB-INF/lib/twilio-java-sdk-6.3.0.jar] to the cache because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache
    的问题,是因为从tomcat8中开始就增加了静态资源缓存的配置 ,是需要设置相应的参数的。
    tomcat的安装目录/conf/context.xml中的Context中添加:

    <Resources  cachingAllowed="true" cacheMaxSize="100000"/>
    

    web程序代码设置

    因为spring-boot默认提供内嵌的tomcat,所以需要在一个tomcat中运行多个web程序的时候,需要將项目打包成war以及取消boot自带的tomcat。

    1.修改程序入口

    将项目的启动类Application.java继承SpringBootServletInitializer并重写configure方法

    @SpringBootApplication
    public class Application extends SpringBootServletInitializer {
    
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
            return application.sources(Application.class);
        }
    
        public static void main(String[] args) throws Exception {
            SpringApplication.run(Application.class, args);
        }
    }
    

    2.修改pom

    在pom.xml文件中,project下面增加package标签,若原有可能的是jar,所以將jar改成war

    <packaging>war</packaging>
    

    3.取消内嵌的tomcat

    pom.xml文件中,dependencies下面添加

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
    

    备注:
    请注意修改防火墙访问端口。以上办法都没有设置项目访问域名以及设置单独的访问端口,均使用相同的IP和端口访问。

    参考

    tomcat服务器部署多项目方法
    tomcat配置文件中属性值的说明
    spring-boot项目在外部tomcat环境下部署遇到的问题

    展开全文
  • Tomcat部署多个Web项目

    千次阅读 2021-07-17 23:30:18
    Tomcat部署多个Web项目 方法:修改端口,部署多个项目 1、tomcat目下复制webapps目录,并重命名为webapps1 Tomcat下webapps已经部署了一个项目,复制webapps重命名为webapps1,并在该文件夹下删除第一个项目...

    方法:修改端口,部署多个项目

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

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

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

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

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

    <!--把 Catalina 修改为 Catalina1 -->
    <Service name="Catalina1">
        <!--把默认端口号 8080 改为 8081 -->
        <Connector port="8081" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                   redirectPort="8443"/>
        <!--把 Catalina 修改为 Catalina1 -->
        <Engine name="Catalina1" defaultHost="localhost">
            <Realm className="org.apache.catalina.realm.LockOutRealm">
                <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                       resourceName="UserDatabase"/>
            </Realm>
            <!--把 webapps 修改为 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>
    
    展开全文
  • 同一个tomcat部署多个项目

    万次阅读 热门讨论 2018-10-17 13:50:36
    在开发项目中,有时候我们需要在同一个tomcat中部署多个项目,小编之前也是遇到了这样的情况,碰过不少的壁,故整理总结如下,以供大家参考。(以Linux为例,其他系统同样适用)   一、首先将需要部署的项目打成...

           在开发项目中,有时候我们需要在同一个tomcat中部署多个项目,小编之前也是遇到了这样的情况,碰过不少的壁,故整理总结如下,以供大家参考。(以Linux为例,其他系统同样适用)

     

    一、首先将需要部署的项目打成war包,放到tomcat的webapps目录下

     

    二、修改tomcat的conf目录下的sever.xml文件

           文件内容如下:

          在Host中新增Context,一个Context代表一个项目。其中,docBase属性代表web应用的文件路径,这个路径可以写绝对路径也可以写相对路径;path属性代表访问给web项目的URL入口;reloadable属性设置为true,tomcat服务器在运行状态下回监视在/WEB-INF/classes和/WEB-INF/lib目录下class文件的改动,如果检测到class文件有更新,服务器会自动重新加载web应用。

    展开全文
  • idea 一个Tomcat启动多个Web项目

    千次阅读 2018-05-15 15:48:57
    前言当项目大了,项目多了,有的时候需要启动多个Web,Intellij IDEA 其实可以做到这种操作;之前以为多创建一个tomcat实例就行,但是发现在启动的时候报“socket closed”或“Error listenerStart (有可能)”的错误...

    前言

    当项目大了,项目多了,有的时候需要启动多个Web,Intellij IDEA 其实可以做到这种操作;

    之前以为多创建一个tomcat实例就行,但是发现在启动的时候报“socket closed”或“Error listenerStart (有可能)”的错误。

    第一步:更改端口

    改下端口,记得两个端口都要修改下
    第一个应用:http port :8080  \ jmx port:1099
    第二个应用:http port :8081 \ jmx port 1098


    第二步:Deployment 设置中war exploded

    第三步:设置Application context 

    第一个应用:/gateway
    第二个应用:/boss

    tips,因为多个web应用的启动会占用更多内存,所以在设置Vm options 设置下:
    -mx2048m -XX:MaxPermSize=128m


    展开全文
  • **首先说明:**我是之前就把一个Wed项目部署到Tomcat下,网上教程很可以自己找找,在这里只是说怎样再把...一、首先新建一个web项目 二、然后右击Servers窗口下的任意一个Tomcat,New—>Server,选中你要的To...
  • Tomcat上部署多个Java Web项目

    万次阅读 2018-04-30 16:04:58
    最近两周特意整理自己的网站和自己大学三年写过...项目部署到Tomcat上,主要的方法有:1 直接将web项目文件件拷贝到webapps目录中 这是最常用的方式,Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,...
  • Eclipse用了,IntelliJ中创建Maven聚合项目可能有小伙伴还不太熟悉,我们今天就来看看。 IntelliJ中创建普通的Java聚合项目相对来说比较容易,不会涉及到web操作,涉及到web的话会有一点点麻烦。我们来一步一步看...
  • Tomcat下发布Web项目

    千次阅读 2020-03-20 16:10:03
    为了可以通过浏览器访问到自己tomcat下的web项目,我们需要先了解以下内容: Web开发概述 1.1WEB通信 WEB采用B/S通信模式,通过超文本传送协议(HTTP, Hypertext transport protocol)进行通信。通过浏览器地址栏编写...
  • 在部署web项目到服务器上的时一般都是这么配置的: 配置虚拟目录不是配置虚拟路径,虚拟目录的意思是,web项目名称。 1.虚拟目录的映射: Web开发以后交给服务器,要想被外界访问,就得把目录交给服务器管理,这...
  • 我们在使用IDEA在Tomcat中部署项目时会出现两选择,分别是archive war和exploded war,如下图: 只是从字面上理解一是归档的,一是分解的,具体有什么区别呢?我们分别来看一下部署的效果。 1、使用...
  • 动态Web项目Tomcat部署时出现两个甚至多个spring-web 本人小白一枚,在创建第一个SpringMVC项目的时候出现了如下问题: 这就导致部署该项目的时候控制台报错,如下: 严重: 子容器启动失败 java.util....
  • tomcat上部署了两个web工程,其中一个可以正常访问,访问第二个时会抛出 Exception in thread "http-apr-8080-exec-8"无法进行访问
  • tomcat部署多个web项目

    千次阅读 2018-12-25 14:13:37
    同一个tomcat上部署2个web项目时,如果其中至少一个项目带项目名,这种应该没问题的,也可以用同一个端口号.当2个项目都不带项目名访问时,可以采用不同的端口号来解决: tomcat conf目录下,server.xml文件修改:例如下面...
  • IDEA配置Tomcat并运行web项目

    千次阅读 2020-05-26 17:30:10
    web应用模式 C/S模式 Client/Server或客户端/服务器模式 ...Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问。开发Java Web应用所
  • 同一个Tomcat部署多个项目

    万次阅读 多人点赞 2017-07-18 11:28:30
    同一个Tomcat 同一个端口 部署多个项目第一步:把待发布的多个项目.war文件放入tomcat的webapps文件下下 第二步:修改 $TOMCAT_HOME\conf 下的server.xml文件 在server.xml文件中新增节点,一个节点代表一...
  • 第一步:先在tomcat目录下,复制一webapps命名为webapps_view 如下图: 第二步:更改conf中的配置文件:server.xml <?xml version="1.0" encoding="UTF-8"?> <Server port="8005" shutdown="SHUTDOWN"&...
  • 最近手头有两个项目需要本地运行联调,在mac上死活都不能同时运行,不管先启动哪一,启动第二的时候就会报错,端口已经改过。 28-Jun-2017 11:10:54.274 严重 [main] org.apache.catalina.core.StandardServer....
  • 同一个tomcat多个web应用共享session

    千次阅读 2017-03-06 15:18:07
    同一个tomcat多个web应用共享session tomcat版本:apache-tomcat-6.0.29(次方tomcat6和tomcat7支持)   1.修改D:\apache-tomcat-6.0.29\conf\server.xml文件   由于每个app都有一个唯一的一个...
  • tomcat 多项目启动顺序问题

    万次阅读 2018-01-25 12:02:55
    toamcat webapp 下同时有多个项目时 启动顺序不按文件夹名称或者什么顺序时,为了控制启动顺序 可以在 tomcat/config/Catalina/localhost 里添加文件 假设需要先启动的项目文件夹是notify_taihang 则在该...
  • java程序的入口应该是main()函数,可是基于xml配置开发的web项目,我们从来没有写...下面我们通过跟踪调试tomcat源码,分析一下web项目的启动过程。 源码下载地址: http://mirrors.hust.edu.cn/apache/tomcat/tomc...
  • 此文源自一次多年前面试的面试题,民工哥将它总结出来分享给大家,希望对大家有所帮助,或者今后的面试中说不定会用的上。首先,我们了解一下常见的Java Web服务器。Tomcat:由Apac...
  • idea中tomcat如何快速部署多个项目

    千次阅读 2019-01-25 15:23:39
    idea中,单个window不建议打开多个项目tomcat仅在单个项目中配置有效 若是需要启动多个项目,而idea单个window单个项目是无法启动多个项目的 在这,利用修改tomcat配置文件,可同时启动不用window中的多个项目 ...
  • Web项目Tomcat配置

    千次阅读 2019-12-14 17:57:40
    Web项目结构和Tomcat配置 回顾 1 封装工具类 DbUtils 1注册驱动 2获取连接 3释放资源 4执行命令 2 Dao(DataBase Access Object)设计模式: 把数据访问代码抽离出来。降低代码的耦合性和提高扩展性。 dao...
  • 单独使用tomcat来部署多个web项目,并且我们要实现多个项目对应多个端口。以apache-tomcat-8.5.11为例。 1.1 下载好tomcat后解压,在tomcat根目录下复制一个webapps1(一个webapps对应一个端口),同时在当前的conf...
  • 个人觉得简单易操作的两种部署方式: 1.使用tomcat的自动部署。(适用于文件和war包,不需要重启tomcat) 2.自定义web部署文件。(只适用于文件形式的,需要重启tomcat
  • 首先安装JDK+Tomcat和配置好环境变量,部署第一个项目是比较简单,本文主要是针对部署第二个项目的时候出现的一些问题和解决办法进行叙述。可能解决办法有很种,目的都是为了解决遇到的问题。我们公司一直以来采用...
  • 使用IDEA&Tomcat9部署Web项目

    千次阅读 2018-03-16 13:27:15
    看了不少的相关博客,感觉写的都有...Java的环境变量如JAVA_HOME等需要配置好,这网上有很教程。1.打开IDEA创建新项目在Application Server如果没有自动找到你的Tomcat,点击New-TomcatServer选择你的Tomcat所在...
  • tomcat部署Java Web 项目的三种方式

    千次阅读 2018-04-05 10:36:46
    原文地址:...web服务器就是一容器,它可以向发出请求的浏览器提供文档的程序,它可以放置网站文件,让全世界浏览;也可以放置数据文件,让全世界下载。大型的web服务器主要有Weblogi...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 318,545
精华内容 127,418
关键字:

tomcat多个web项目