Tomcat下载安装
1、Tomcat下载安装
下载地址:https://tomcat.apache.org/.
根据生产环境选择所需版本,一般使用一些老版本(铬仁使用的8版本)。
解压。
到这里使用idea、eclipse等软件来使用Tomcat中间件的准备就可以了,需要在对应软件配置好Tomcat的路径即可。
铬仁使用的idea在这里展示一下配置Tomcat。
点击配置启动框再点击Edit
点击+选择Tomcat Server 选其下的local
依次选择好路径即可调试运行项目。
下面的配置是用于部署服务器的项目所需的配置。
右键此电脑、高级系统设置、环境变量,新建CATALINA_HOME变量,变量值为tomcat的解压路径。
在path变量中添加
%CATALINA_HOME%\bin
%CATALINA_HOME%\lib
win+r调出控制台,运行Tomcat启动文件startup.bat,运行成功会弹出Tomcat运行框,在浏览器地址栏输入localhost:8080测试是否启动成功。
可以看到Tomcat运行时中文乱码,这是Tomcat运行框的字符格式和Tomcat中间件的内部指定格式不同造成的。将Tomcat的指定格式改为和运行窗口一致即可解决。
控制台可以通过命令修改编码格式chcp 65001,但是暂时性的修改,彻底修改需要修改系统注册表。
铬仁不建议修改注册表。
常见编码格式
十进制码值 | 对应编码名称 |
---|---|
950 | 繁体中文 |
65001 | UTF-8代码页 |
936 | 简体中文默认的GBK |
437 | MS-DOS 美国英语 |
再来说说apache-tomcat-8.5.73\conf下的server.xml文件。
将注释文件全部删除后留下的文件会清晰很多。
下面展示一些 完整的server.xml文件并加上了注解
。
// An highlighted block
<?xml version="1.0" encoding="UTF-8"?>
<!--server标签有连个属性,port:指定一个端口负责监听关闭tomcat的请求。
shutdown:指定向端口发送的命令字符串-->
<Server port="8005" shutdown="SHUTDOWN">
<!--sdfsd-->
<Listener className="org.apache.catalina.startup.VersionLoggerListener" />
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<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" />
</GlobalNamingResources>
<Service name="Catalina">
<!--Connector(表示客户端和service之间的连接,
port:指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求就是你要访问项目用的端口号)。
minProcessors:服务器启动时创建的处理请求的线程数。
maxProcessors:最大可以创建的处理请求的线程数。
enableLookups:如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址。
redirectPort:指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号。
acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。
connectionTimeout:指定超时的时间数(以毫秒为单位)。
-->
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!--Engine
defaultHost:指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性值是一样的。
-->
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<!--host(表示一个虚拟主机)
name:指定主机名。
appBase:应用程序基本目录,即存放应用程序的目录。
unpackWARs:如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序。
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
</Service>
</Server>
所触及的领域是星辰大海,初心就想问个为什么,不懂的越来越多,尽心为之吧。