Tomcat部署

2017-04-26  本文已影响0人  假鞋子

Tomcat多实例配置

  1. 下载一个免安装版的tomcat

  2. 在任意位置创建一个文件夹作为实例【本文以instance为名】。

  3. 在该文件夹内加入tomcat的conf文件夹和bin目录下的startup.batshutdown.bat

  4. 编辑startup.batshutdown.bat,在顶部加入"SET CATALINA_BASE=%CD%"

  5. 修改此conf文件夹中server.xml的端口号(Server port,Connector port ,AJP port),建议每一个新实例在端口上加100以方便管理。【8080改8180】

  6. 最后在实例文件夹中加入webapps文件夹并放入项目或修改配置文件指向其他目录的项目,然后启动脚本startup.bat启动该实例。

原理:
下载的tomcat默认情况下,主目录和实例目录在同一个目录下。
主目录是tomcat运行目录,分别是tomcat的启动目录bin目录和主体程序目录lib目录。
实例目录是tomcat存放实例以及相关配置、日志的目录。其中conf配置目录需要手动添加并修改相关配置,logs、work、temp会在项目启动后自动生成。
运行startup.bat后,脚本文件会根据里面的配置自动找到tomcat的主目录并运行程序,然后再根据startup.batshutdown.sh中的CATALINA_BASE指向当前实例。

<br />


Tomcat多应用配置

  1. 下载一个免安装版的tomcat

  2. 解压到任意位置。

  3. 配置server.xml的端口号(Server port,Connector port ,AJP port)。

  4. 启动startup.bat

说明:
tomcat免安装版对系统没有更改。端口不冲突的情况下,每次运行都产生一个新的服务。所以每个进程互不影响。另外也可以参考上面多实例配置,一起配置。
<br />

Tomcat多项目配置


  1. 直接将项目放在webapps下,当tomcat启动时会默认自动加载这个目录。也可以改变这个目录,以下为默认
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
  1. server.xml中的<Host>节点中添加<Context>节点。内容如下
<Context path="/hello" reloadable="true" docBase="D:\...\WebRoot" debug="0" privileged="true"></Context>  

【path】:虚拟路径;
【docBase】:项目物理路径;
【workDir】:应用工作目录,存放编译后的文件,真正用来执行的文件夹;
【debug】:设置debug level,0表示提供最少的信息;
【privileged】:设置为true时才允许web应用使用容器内的servlet;
【reloadable】:热部署,为true的时候会检测WEB-INF文件夹下lib和classes目录的变化,不重启的情况下自动重载web应用;
【antiResourceLocking和antiJARLocking】 热部署是需要配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把相应的源文件和jar文件复制到一个临时目录里。

  1. /conf/catalina/localhost目录下创建一个xml文件,文件名就为该虚拟路径。内容可以如下
<Context  docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>

注意:
删除一个通过方式而或者三部署的应用的时候一定要删除server.xml下的context节点和localhost下的xml文件。

上一篇下一篇

猜你喜欢

热点阅读