Tomcat
Tomcat安装启用
可从官网下载
https://tomcat.apache.org/分为exe版和zip版,即安装版和绿化版,建议安装绿化版
安装非安装版,解压后即可使用,通过Tomcat安装目录下的批处理可执行文件\bin\start.bat启动服务器,运行之后打开浏览器,在地址栏输入http://localhost:8080 ,能显示Tomcat的欢迎界面则说明服务器安装成功。
注:如果 Tomcat 服务器不能启动,可以先打开命令提示符窗口,切换到 Tomcat 安装目录下的 bin 目录,运行 startup.bat,查看服务器控制台窗口输出的错误信息,根据服务器显示的错误信息查找原因,有时是8080端口已被占用,更多的情况是计算机感染病毒所致。(处理方式可自行搜索,很玄学)
Tomcat服务器的目录结构
| 目录 | 描述 |
|---|---|
| bin | 包含启动、关闭Tomcat或者其他功能的脚本(.bat文件和.sh文件) |
| conf | 包含各种配置文件,包括Tomcat的主要配置文件server.xml,以及为不同的Web应用设置默认值的文件web.xml |
| lib | 包含Tomcat中使用的jar文件。(在UNIX平台中,此目录下的任何文件都被加到Tomcat的classpath中) |
| logs | 日志文件目录 |
| temp | 临时文件 |
| webapps | Web应用程序主目录 |
| work | Tomcat自动生成,放置Tomcat运行时的临时文件,(比如有JSP编译出的Servlet的.java 和.class文件) |
Tomcat服务器的配置文件
Tomcat服务器的配置文件是conf文件夹下的
sever.xml文件
结构:
<!--根元素,代表整个服务器-->
<Server> <!--服务器是服务的生存环境;关闭端口8005,关闭指令SHUTDOWN-->
<!--服务器可以包含多个服务,默认服务的名称为Catalina-->
<Service><!--服务,由Engine及相关的一组Connectors构成-->
<!--每个服务由多个Connector和一个Engine容器组成-->
<Connector/><!--客户端与服务器之间的连接,port属性定义端口-->
<Engine><!--引擎,处理Service的所有请求,实现Container接口-->
<host><!--虚拟主机 appBase属性设置应用程序目录-->
<!--虚拟目录,每个Context是一个独立的网站,通过path标识判断走哪个网站-->
<Context/>
</host>
</Engine>
</Service>
</Server>
配置文件元素详解
| 元素名 | 属性 | 解释 |
|---|---|---|
| server | port | 指定一个端口,这个端口负责监听关闭Tomcat 的请求 |
| shutdown | 指定向端口发送的关闭命令字符串 | |
| service | name | 指定service的名字 |
| Connector(表示客户端和service之间的连接) | port | 指定服务器端要创建的端口号,并在这个端口监听来自客户端的请求 |
| minProcessors | 服务器启动时创建的处理请求的线程数 | |
| maxProcessors | 最大可以创建的处理请求的线程数 | |
| enableLookups | 如果为true,则可以通过调用 request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为 false 则不进行 DNS查询,而是返回其P地址 | |
| redirectPort | 指定服务器正在处理HTTP请求时收到了一个SSL传输请求后重定向的端口号 | |
| acceptCount | 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理 | |
| connectionTimeout | 指定超时的时间数(以毫秒为单位) | |
| Engine(指定service中的请求处理机,接收和处理来自Connector的请求) | defaultHost | 指定默认的处理请求的主机名,它至少与其中的一个 host元素的name属性值是一样的 |
| Context(表示一个Web应用程序,通常为WAR文件) | docBase | 应用程序的路径或者是WAR文件存放的路径 |
| path | 表示此Web应用程序的URL的前缀,这样请求的URL为http:// localhost;8080/path/**** | |
| reloadable | 如果为 true,则Tomcat 会自动检测应用程序的/WEB-INF/lib 和 /WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重启Tomcat 的情况下使应用程序的变化生效,一般在调试阶段设为 true,正式发布后改为 false | |
| host(表示一个虚拟主机) | name | 指定主机名 |
| appBase | 应用程序基本目录,即存放应用程序的目录 | |
| unpackWARs | 如果为true,则Tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序 | |
| Logger(表示日志,调试和错误信息) | className | 指定logger使用的类名,此类必须实现org.apache.catalina.Logger 接口 |
| prefix | 指定log文件的前缀 | |
| suffix | 指定log文件的后缀 | |
| timestamp | 如果为true,则log文件名中要加入时间,如localhost log.2023-07-04.txt | |
| Realm(表示存放用户名,密码及role的数据库) | className | 指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口 |
| Valve(功能与Logger差不多,其prefix和suffix属性解释和 Logger中的一样) | className | 指定Valve使用的类名,如用org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息 |
| directory | 指定 log文件存放的位置 | |
| pattern | 有两个值,common 方式记录远程主机名或IP地址、用户名、日期、第一行请求的字符串、HTTP响应代码,发送的字节数。combined 方式比common方式记录的值更多 |
配置文件 server.xml 中的默认设置一般无须修改,其服务器的端口为 8080,主目录为 $TOMCAT_ HOME/webapps/Root。通过修改属性protocol="HTTP/1.1"的 Connector 元素的 port属性值可以修改Tomcat 服务器的端口号。
<Connector port="要设置的端口号" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
通过修改 Host 元素的appBase 属性值可以更改 Tomcat 服务器默认的应用程序发布目录,该目录下的 Root目录为默认的主目录。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation = "false" xmlNamespaceAware="false" >
在 server.xml 中还可以配置虚拟主机、用户验证方式、设置单点登录等功能。实际上最常见的操作是建立虚拟路径或直接部署 Web 应用程序。
注意,在修改默认配置前应对server.xml文件进行备份,任何错误设置将导致服务器无法启动。
在config 目录下还有一个配置文件 webxml,用来设置服务器上所有网站(Web 应用程序)的默认值(通用配置项)。文件 tomcat-user.xml 用来设置远程登录 Tomcat 服务器的角色和用户名,admin角色的用户可以使用Admin Web Application 进行系统管理,manager 角色的用户可以使用Manager Web Application 进行应用管理。在 Tomcat 的默认主页(欢迎界面)有这两个 Web 管理程序的登录入口,还有帮助文档、Servlet 和JSP 例程等学习资源的链接入口。
配置文件元素详解 附图:

文章内容来源于书籍:
JSP Web应用程序开发教程 第2版_杨占胜,王鸽,王海峰编著_14358383
文章详细介绍了如何安装和配置Tomcat,包括下载绿化版,通过start.bat启动服务器,检查是否安装成功。重点讲解了Tomcat的目录结构,特别是配置文件server.xml的结构和主要元素,以及如何修改端口号和应用程序发布目录。还提到了其他配置文件如web.xml和tomcat-user.xml的作用,以及虚拟主机、用户验证和Web应用程序管理的相关信息。
&spm=1001.2101.3001.5002&articleId=131529207&d=1&t=3&u=b2e090e031e3465f8f0c97b97dbfef8c)
12万+

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



