Tomcat目录介绍 tomcat主目录 webapps目录 conf目录 tomcat管理 tomcat配置页面管理 server.xml配置文件 Connector主要参数 host主要参数
tomcat主目录
cd /data/application/tomcat
tree -L 1.
├── bin #存放tomcat的管理脚本
├── BUILDING.txt
├── conf #tomcat的配置文件
├── CONTRIBUTING.md
├── lib #web应用调用的jar包存放路径
├── LICENSE
├── logs #tomcat日志存放目录,catalina.out日志为只要输出日志
├── NOTICE
├── README.md #使用说明书
├── RELEASE-NOTES
├── RUNNING.txt
├── temp #存放临时文件
├── webapps #默认网站发布目录
└── work #存放编译生产的.java与.class文件
webapps目录
cd /data/application/tomcat/webapps
tree -L 1.
├── docs #tomcat的帮助文档
├── examples #web应用实例
├── host-manager #主机管理
├── manager #管理
└── ROOT #默认站点根目录
conf目录
.
├── Catalina
├── catalina.policy
├── catalina.properties
├── context.xml #Tomcat公用的环境配置,tomcat 服务器会定时去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自动重新加载这个文件,而不需要重启服务器。
├── logging.properties
├── logs
├── server.xml #tomcat主配置文件 tomcat的设置,可以设置端口号,添加虚拟机这些的,是对服务器的设置
├── server.xml.bak
├── server.xml.bak2
├── tomcat-users.xml #tomcat 管理用户配置文件 Tomcat Manager是Tomcat自带的、用于对Tomcat自身以及部署在Tomcat上的应用进行管理的web应用
├── tomcat-users.xsd
└── web.xml #Web应用程序描述文件,都是关于是Web应用程序的配置文件。所有Web应用的 web.xml 文件的父文件。
tomcat管理
启动程序 /data/application/tomcat/bin/startup.sh #启动
关闭程序 /data/application/tomcat/bin/shutdown.sh #关闭
tomcat配置页面管理
vim /data/application/tomcat/conf/tomcat-users.xml
添加这一段<role rolename="admin‐gui" />
<role rolename="admin-script" />
<role rolename="manager-gui" />
<role rolename="manager-script" />
<user username="admin" password="0" roles="admin-script,admin-gui,manager-gui,manager-script"/>
vim /data/application/tomcat/webapps/docs/META-INF/context.xml
vim /data/application/tomcat/webapps/examples/META-INF/context.xml
vim /data/application/tomcat/webapps/host-manager/META-INF/context.xml
vim /data/application/tomcat/webapps/manager/META-INF/context.xml
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />注释掉,使用<!-- -->或者更改成这样
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
server.xml配置文件
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN"><!--port: 指定用于接受关闭命令的端口号shutdown: 指定关闭命令,可自定义,与启动脚本中的命令相对应--><Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /><!--Listener: 用于配置全局监听器,此处为使用APR库进行性能优化的监听器className: 监听器类的完全限定名SSLEngine: 指定是否启用SSL引擎--><Listener className="org.apache.catalina.core.JasperListener" /><!--Listener: JSP引擎的监听器,用于编译和加载JSP页面className: 监听器类的完全限定名--><GlobalNamingResources><!--全局命名资源的配置部分,这里包含了一个可编辑的用户数据库的资源配置--><Resource name="UserDatabase" auth="Container"type="org.apache.catalina.UserDatabase"description="User database that can be updated and saved"factory="org.apache.catalina.users.MemoryUserDatabaseFactory"pathname="conf/tomcat-users.xml" /><!--Resource: 定义了一个资源name: 资源的名称,这里为"UserDatabase"auth: 认证方式,Container表示使用容器的身份验证type: 资源的类型,这里为"org.apache.catalina.UserDatabase"description: 资源的描述信息factory: 创建资源的工厂类的完全限定名pathname: 用户数据库文件的路径,这里为"conf/tomcat-users.xml"--></GlobalNamingResources><Service name="Catalina"><!--Service: Tomcat服务的配置name: 服务名称--><Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" /><!--Connector: 配置用于接受HTTP请求的连接器port: 监听的端口号protocol: 使用的协议connectionTimeout: 连接超时时间redirectPort: 重定向端口,用于HTTPS连接--><!-- 其他连接器的配置 --><Engine name="Catalina" defaultHost="localhost"><!--Engine: Web容器引擎的配置name: 引擎名称defaultHost: 默认的主机名--><Realm className="org.apache.catalina.realm.LockOutRealm"><!--Realm: 安全领域的配置className: 安全领域实现类的完全限定名--><Realm className="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"/><!--嵌套的Realm配置,这里使用UserDatabaseRealm作为默认的安全领域resourceName: 资源名称,对应于conf/tomcat-users.xml文件中的UserDatabase--></Realm><Host name="localhost" appBase="webapps"unpackWARs="true" autoDeploy="true"><!--Host: 虚拟主机的配置name: 主机名appBase: Web应用程序的基础路径unpackWARs: 是否自动解压部署的WAR文件autoDeploy: 是否自动部署Web应用程序--><!-- 其他虚拟主机的配置 --><Valve className="org.apache.catalina.valves.AccessLogValve"directory="logs" prefix="localhost_access_log." suffix=".txt"pattern="%h %l %u %t "%r" %s %b" /><!--Valve: 用于记录访问日志className: 完全限定名directory: 日志存储的目录prefix: 日志文件名的前缀suffix: 日志文件名的后缀pattern: 日志格式--></Host><!-- 其他虚拟主机的配置 --></Engine></Service>
</Server>
Connector主要参数
port:指定服务器端要创建的端口号,并在这个端口监听来自客户端的请求
protocol:连接器使用的协议,支持HTTP和AJP。AJP(Apache Jserv Protocol)专用于tomcat与apache建立通信的
redirectPort:指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号
maxThreads:接收最大请求的并发数
connectionTimeout 指定超时的时间数(以毫秒为单位)
host主要参数
host:表示一个虚拟主机
name:指定主机名
appBase:应用程序基本目录,即存放应用程序的目录.一般为appBase="webapps",相对于CATALINA_HOME而言的,也可以写绝对路径。
unpackWARs:如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序
autoDeploy:在tomcat启动时,是否自动部署