提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
前言
一、概述
二、安装
三、 目录结构
四、启停
五、配置文件
1. server.xml
(1) Server
(2) Listener
(3) GlobalNamingResources
(4) Service
01.Connector
(1) port
(2) protocol
(3)connectionTimeout
(4)redirectPor
02.Engine
(1)name
(2)defaultHost
(3) Host
(5) Context
1.docBase
2. path
2. tomcat-users.xml
3. web.xml
六、多tomcat服务部署
1. 部署
2. 命令优化
3. 端口号修改
4.修改访问页面
七、虚拟主机
总结
今天学习的是Tomcat 以下就是今天的全部内容,有点多,希望可以对我们的学习有所帮助。
提示:以下是本篇文章正文内容,下面案例可供参考
1. Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
2. Tomcat虚拟主机是通过linux或windows操作系统下进行独立运行的一个网站发布容器,他是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术。
3.默认监听端口
8080/tcp
1. 基础配置
[root@localhost ~]# systemctl stop NetworkManager
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
sed -i "/s/ONBOOT=no/ONBOOT=yes/" /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network
2. java环境
java -version
没有环境
yum groupinstall "开发工具"
下载JDK软件包
tar xf apache-tomcat-8.5.16.tar.gz
mv apache-tomcat-8.5.16 /usr/local/tomcat
bin 命令
webapps 应用程序目录
ROOT 访问首页
host-manager 主机管理后台页面
manager 管理后台页面
命令优化
ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/btomcat
ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/stomcat
启动tomcat
tmstart
停止tomcat
stomcat
netstat -anptu | grep java
查看运行状态
测试:
erver是server.xml的根元素,用于创建一个Server实例,默认使用的实现类是 org.apache.catalina.core.StandardServer。
内嵌的子元素为 Listener、GlobalNamingResources、Service。
port
tomcat 监听的关闭服务器的端口。
shutdown 关闭服务器的指令字符串
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" />
该元素用于创建 Service 实例,默认使用 org.apache.catalina.core.StandardService。默认情况下,Tomcat 仅指定了Service 的名称, 值为 “Catalina”。Service 可以内嵌的元素为 : Listener、Executor、Connector、Engine,其中 : Listener 用于为Service添加生命周期监听器, Executor 用于配置Service 共享线程池,Connector 用于配置Service 包含的链接器, Engine 用于配置Service中链接器对应的Servlet 容器引擎。一个Server服务器,可以包含多个Service服务。
executor:指定共享线程池的名称, 也可以通过maxThreads、minSpareThreads 等属性配置内部线程池。
URIEncoding:用于指定编码URI的字符编码, Tomcat8.x版本默认的编码为UTF-8 , Tomcat7.x版本默认为ISO-8859-1。
maxThreads:池中最大线程数。
minSpareThreads:活跃线程数,也就是核心池线程数,这些线程不会被销毁,会一直存在。
acceptCount:接收的连接数。
maxConnections:接收的最大连接数。
compression:是否压缩。
compressionMinSize:压缩的大小。
disableUploadTimeout:禁用上传超时。
端口号,Connector 用于创建服务端Socket 并进行监听, 以等待客户端请求链接。如果该属性设置为0,Tomcat将会随机选择一个可用的端口号给当前Connector使用。
当前Connector 支持的访问协议。 默认为 HTTP/1.1,并采用自动切换机制选择一个基于 JAVA NIO 的链接器或者基于本地APR的链接器(根据本地是否含有Tomcat的本地库判定)
Connector接收连接后的等待超时时间, 单位为毫秒。 -1 表示不超时。
当前Connector 不支持SSL请求, 接收到了一个请求, 并且也符合 security-constraint 约束, 需要SSL传输,Catalina自动将请求重定向到指定的端口。
用于指定Engine的名称, 默认为Catalina 。该名称会影响一部分Tomcat的存储路径(如临时文件)。
默认使用的虚拟主机名称, 当客户端请求指向的主机无效时, 将交由默认的虚拟主机处理, 默认为localhost。
Host 元素用于配置一个虚拟主机, 它支持以下嵌入元素:Alias、Cluster、Listener、Valve、Realm、Context。
01. name
Host 元素用于配置一个虚拟主机, 它支持以下嵌入元素:Alias、Cluster、Listener、Valve、Realm、Context。
02. appBase
当前Host的应用基础目录,当前Host上部署的Web应用均在该目录下(可以是绝对目录,相对路径),默认为webapps
03.unpackWARs
设置为true,Host在启动时会将appBase目录下war包解压为目录。设置为false, Host将直接从war文件启动。
04.autoDeploy
控制tomcat是否在运行时定期检测并自动部署新增或变更的web应用。
Web应用目录或者War包的部署路径。可以是绝对路径,也可以是相对于Host appBase的相对路径。
Web应用的Context 路径。如果我们Host名为localhost, 则该web应用访问的根路径为: http://localhost:8080/myApp。
主要配置的是Tomcat的用户,角色等信息,用来控制Tomcat中 host-manager、manager的访问权限。
web.xml 是web应用的描述文件, 它支持的元素及属性来自于Servlet 规范定义 。 在Tomcat 中, Web 应用的描述信息包括 tomcat/conf/web.xml 中默认配置以及 Web应用 WEB-INF/web.xml 下的定制配置。
tar xf apache-tomcat-8.5.16.tar.gz
mv apache-tomcat-8.5.16 /usr/local/tomcat1
ln -s /usr/local/tomcat1/bin/startup.sh /usr/local/bin/tmstart
ln -s /usr/local/tomcat1/bin/shutdown.sh /usr/local/bin/tmstop
server
port
connector
port
redirectport
vim /usr/local/tomcat/webapps/ROOT/index.jsp
<%
out.println("tomcat");
%>
测试
1. 基于不同的域名
复制Host字段
修改不同Host的name属性,改为不同的域名
修改webapps指定为不同的访问路径
修改日志名称
创建访问目录及首页
mkdir /usr/local/tomcat1/jx1/ROOT -p
vim index.jsp
测试
2. 基于不同的端口
复制Service字段
修改Service的name属性
修改Engine的name属性
修改Host的name及appbase属性
修改日志名称
端口号修改
service
port
connector
port
redirectport
在webapps1中创建ROOT目录并写入首页
mkdir /usr/local/tomcat/webapps1/ROOT
vim index.jsp
以上就是今天要讲的内容,有点的,而且全部是动手操作的东西,所以,一起动手操作起来。