目录
2、拷贝下载好的 apache-tomcat-9.0.11.tar.gz 到 tomcat目录下
3、进入tomcat目录,并解压apache-tomcat-9.0.111.tar.gz
4、进入解压的tomcat包的bin目录,并启动tomcat
1)当用户访问http://www.com/test打开/var/www/html目录下的页面
2)再次修改server.xml配置文件,创建支持加密连接的Connector
一、Tomcat 概述
Tomcat(全称 Apache Tomcat)是由 Apache 软件基金会 开发的开源 Java Web 应用服务器。
它实现了 Servlet 和 JSP (Java Server Pages) 规范,是目前最常用的 Java Web 容器之一。
-
类型:轻量级应用服务器(相较于 WebLogic、WebSphere 等)
-
主要功能:运行 Java Web 应用(支持 Servlet、JSP)
-
默认端口:8080
-
默认目录结构:
$CATALINA_HOME(Tomcat 的安装目录
二、Tomcat 的核心组成结构
| 模块/组件 | 说明 |
|---|---|
| Server | 整个 Tomcat 服务器实例的顶层容器。 |
| Service | Server 下的一个或多个服务。每个 Service 通常由一个或多个 Connector 和一个 Engine 组成。 |
| Connector | 连接器,负责接收客户端请求(支持 HTTP、HTTPS、AJP)。 |
| Engine | 负责处理请求的主引擎。 |
| Host | 表示一个虚拟主机,可部署多个 Web 应用。 |
| Context | 一个 Web 应用(如 /myapp),对应一个 web.xml。 |
结构层次:
Server
└── Service
├── Connector (HTTP/AJP)
└── Engine
└── Host
└── Context (WebApp)
三、关键配置文件
| 文件 | 功能 |
|---|---|
| server.xml | Tomcat 的主配置文件,定义端口、服务、连接器等。 |
| web.xml | Web 应用的部署描述符,定义 Servlet、Filter、Listener 等。 |
| context.xml | 应用级别的配置(数据库连接池等)。 |
| tomcat-users.xml | 定义用户与角色,用于访问管理界面。 |
四、Tomcat 常见目录结构
| 目录 | 说明 |
|---|---|
/bin | 启动和停止脚本,如 startup.sh、shutdown.sh |
/conf | 配置文件,如 server.xml、web.xml、tomcat-users.xml |
/lib | Tomcat 的公共类库 |
/logs | 日志文件 |
/webapps | Web 应用部署目录(默认部署到这里) |
/work | JSP 编译后的临时文件 |
/temp | 临时文件目录 |
五、先安装java环境

六、安装Tomcat
1、新建tomcat存放的目录
mkdir /usr/local/tomcat
2、拷贝下载好的 apache-tomcat-9.0.11.tar.gz 到 tomcat目录下
cp apache-tomcat-9.0.111.tar.gz /usr/local/tomcat/
3、进入tomcat目录,并解压apache-tomcat-9.0.111.tar.gz
cd /usr/local/tomcat/
tar -zxvf apache-tomcat-9.0.111.tar.gz
4、进入解压的tomcat包的bin目录,并启动tomcat
cd /usr/local/tomcat/apache-tomcat-9.0.11/bin/
./catalina.sh start
5、浏览器访问并解决防火墙问题。
在浏览器使用ip进行访问(端口默认:8080),http://192.168.4.120:8080,可以看到tomcat的管理界面。
192.168.0.8 为服务器的ip地址,如果访问不了,有可能是服务器防火墙问题,8080端口被拦截了,直接关闭防火墙就可以啦。

七、修改tomcat配置文件
1)创建测试jsp页面
vim /usr/local/tomcat/webapps/ROOT/test.jsp
<html>
<body>
<center>
Now time is: <%=new java.util.Date()%>
</center>
</body>
</html>
2)验证:
输入http://192.168.4.120:8080/test.jsp来验证

修改server.xml配置文件,创建两个域名的虚拟主机,修改如下两个参数模块
八、配置:
步骤一:配置服务器虚拟主机
1)修改server.xml配置文件,创建虚拟主机
vim /usr/local/tomcat/conf/server.xml
...
<Host name="www.a.com" appBase="a"
unpackWARs="true" autoDeploy="true">
</Host>
<Host name="www.b.com" appBase="b"
unpackWARs="true" autoDeploy="true">
</Host>
...

2)创建虚拟主机对应的页面根路径
mkdir -p /usr/local/tomcat/{a,b}/ROOT
echo "AAA" > /usr/local/tomcat/a/ROOT/index.html
echo "BBB" > /usr/local/tomcat/b/ROOT/index.html
3)重启服务
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
ss -ntulp | grep java
#查看是否启动成功
4)客户端设置hosts文件,并测试
vim /etc/hosts
192.168.4.120 www.a.com www.b.com
curl www.a.com:8080
curl www.b.com:8080

步骤二:修改www.b.com网站的首页目录为base
1)使用docBase参数可以修改默认网站首页路径
<Context path="" docBase="base"/> 默认路径在ROOT,加上docBase参数,修改默认路径


2)测试查看页面是否正确

步骤三:跳转
1)当用户访问http://www.com/test打开/var/www/html目录下的页面
/var/www/html/为apache的httpd默认目录,如果没有安装过httpd是没有这个目录的,所以可以自己建,也可以对上述路径进行修改

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh


如果你想从外部访问 Tomcat(例如 www.a.com),确保 Tomcat 没有只绑定到 localhost。你可以在 server.xml 中的 <Connector> 配置中设置 address 属性为 0.0.0.0,使其绑定到所有可用的网络接口:

步骤四:配置Tomcat支持SSL加密网站
1)创建加密用的私钥和证书文件
keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore
2)再次修改server.xml配置文件,创建支持加密连接的Connector
Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" schme="https" secure="true" clientauth="false" sslProtocol="TLS" keystoreFile="/usr/local/tomcat/keystore" keystorePass="123qqq...A">
大概在86行左右
3)开始测试

步骤五:配置Tomcat日志
Tomcat默认日志在/usr/local/tomcat/logs
catalina.时间.log 为tomcat的系统日志,这个日志每天产生一个
1)为每个虚拟主机设置不同的日志文件

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
2)开始测试

九、常见问题与解决
| 问题 | 原因 | 解决办法 |
|---|---|---|
| 启动报端口占用 | 8080 被占用 | 修改 server.xml 中的 <Connector port="8080"/> |
| 中文乱码 | 编码设置不统一 | 在 server.xml 中添加 URIEncoding="UTF-8" |
| 内存溢出(OutOfMemoryError) | JVM 堆空间不足 | 增大 JVM 参数(-Xmx) |
| 部署失败 | web.xml 错误 | 检查 Web 应用配置是否正确 |
十、总结
| 项目 | 内容 |
|---|---|
| 定位 | 轻量级 Java Web 容器 |
| 核心功能 | 运行 Servlet、JSP |
| 优点 | 开源、轻量、易用、社区活跃 |
| 缺点 | 不支持 EJB、JMS 等企业级特性 |
| 适用场景 | 中小型 Java Web 项目、Spring MVC 应用等 |
Tomcat安装与多场景配置

3662

被折叠的 条评论
为什么被折叠?



