首页 > 代码库 > Tomcat常用设置 <持续更新>

Tomcat常用设置 <持续更新>

  本篇主要用于修改一些常用配置时的参考。遇新常记,以备时需。

=========================>

  Windows版

  • 基本安装

  在安装之前,JDK应该是已经安装妥当,并设置了%JAVA_HOME%与%JRE_HOME%:

%JAVA_HOME%    E:\Program Files\Java\jdk1.7.0_80
%JRE_HOME%    E:\Program Files\Java\jdk1.7.0_80\jre

妥当后,在dos环境下用java -version 以及javac命令 检查java相关设置,无误后,解压tomcat.zip,并设置%CATALINA_HOME%:

%CATALINA_HOME%    E:\software package\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64

上述路径都需要在Path中指向各自的bin目录(JRE_HOME除外),保证系统路径正常。

  接下来是安装tomcat服务:

E:\software package\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64\bin>service.bat installInstalling the service Tomcat7 ...Using CATALINA_HOME:    "E:\software package\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64"Using CATALINA_BASE:    "E:\software package\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64"Using JAVA_HOME:        "E:\Program Files\Java\jdk1.7.0_80"Using JRE_HOME:         "E:\Program Files\Java\jdk1.7.0_80\jre"Using JVM:              "E:\Program Files\Java\jdk1.7.0_80\jre\bin\server\jvm.dll"The service Tomcat7 has been installed.

之后便可以在安装的bin路径下,或以tomcat7w.exe启动,或是以startup.bat启动。

  • 工程虚拟路径

  对于一个running的tomcat,web工程可以直接打个war包丢入webapps目录下,tomcat会自动解压,解压的文件名与war包名称相同,所以需要修改访问路径时,只需要在解压之前修改war包的名称即可。但对于一个已经存在的工程文件,如果要修改其访问路径,可以在server.xml中<Host/>中进行配置<Context path="showName" docBase="acturalAddress"/>:

      <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log." suffix=".txt"/>        <Context path="testDruid" docBase="E:\software package\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64\webapps\test4-0.1"/>      </Host>

 这样,对于test4-0.1这个工程,在访问时,以我的本机为例,可以用虚拟路径访问:

http://localhost:8080/testDruid/

当然,原先的路径依旧合法。

  • 工程虚拟主机

  以本机为例,如果不想使用localhost的方式开启tomcat,可以将<Host/>中所配置的name属性值改成自己希望设置的域名,当然,这里需要修改hosts文件,让这个新域名指向本机ip:

<Host appBase="webapps" autoDeploy="true" name="www.changjiang.com" unpackWARs="true">
......

顺便一提,此时appBase指tomcat默认访问的文件夹,如果修改为别的路径,那么访问的就是新路径下的工程。想在访问路径中不加端口号,只需将访问端口改为80,即http协议的默认端口;如果想访问的工程时不加工程的名字,则需要将该工程的名称改为ROOT,此时该工程的访问路径为"/"。

  • 多个tomcat共同使用

  最根本的,只需要核心的三个端口不冲突,脚本中指向的路径能够是各自包中真正的路径即可。

所以,最为有效的是,在环境变量中添加%CATALINA_HOME_1%,而后将各类脚本中涉及到的地址均改为该名称,而后将server.xml中的http协议,ajp协议以及SHUTDOWN端口修改为不同的端口即可。当然,还是要在dos环境中各自的目录下安装服务。

  • 内部目录与基本常识

  tomcat发布web服务,对于其内的一些资源,如txt,jpg等资源,可以及时发布出来,对于一些工程我们可以配合log4j将日志发布到指定的目录下,而后在外部用http请求访问查看。

  WEB-INF目录是无法访问的,这是由于tomcat做了过滤,所以即便资源放在其中,也不能从外部http请求到该路径下。

  对于一个web项目,启动后首先查看的是该项目的web.xml文件,如果没有,那么会使用tomcat/conf目录下的web.xml文件。

  web.xml中,<welcomelist/>里的内容是遵从先后顺序的。

  ......如果能查看源代码,可以了解更多细节

  • 用户名与密码

  根据权限的不同,可以分为四种等级,但此处只列出可以进入各个html文件权限的等级,其余的内容可以到文档中查看:

<role rolename="manager-gui"/><user username="root" password="root" roles="manager-gui"/>

添加位置位于conf/tomcat-user.xml中。

  • tomcat各个版本差异

  使用中需要注意的是,tomcat版本不同,所依赖的servlet/jsp/jstl版本都会有差异。

  • nginx配置tomcat集群

  待续...

Tomcat常用设置 <持续更新>