一、背景介绍

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为比较流行的Web 应用服务器。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

二、卸载其他版本

xxx

三、安装

下载到指定目录

image.png

解压

image.png

tar -zxvf apache-tomcat-8.5.81.tar.gz -C /usr/local/

image.png

四、配置

目录介绍

  1. bin 二进制文件,脚本
  2. conf 配置目录
  3. lib 库目录,都是jar
  4. logs 日志目录
  5. catalina.out 启动日志
  6. localhost_access_log.2022-04-02.txt 访问日志
  7. temp 临时目录
  8. webapps 程序存放目录
  9. work 程序生成的。。。。

image.png


  1. [root@bogon apache-tomcat-8.5.81]# ll bin/
  2. 总用量 884
  3. -rw-r-----. 1 root root 36192 6 9 05:30 bootstrap.jar
  4. -rw-r-----. 1 root root 16840 6 9 05:30 catalina.bat
  5. -rwxr-x---. 1 root root 25294 6 9 05:30 catalina.sh
  6. -rw-r-----. 1 root root 1664 6 9 05:30 catalina-tasks.xml
  7. -rw-r-----. 1 root root 2123 6 9 05:30 ciphers.bat
  8. -rwxr-x---. 1 root root 1997 6 9 05:30 ciphers.sh
  9. -rw-r-----. 1 root root 25410 6 9 05:30 commons-daemon.jar
  10. -rw-r-----. 1 root root 211777 6 9 05:30 commons-daemon-native.tar.gz
  11. -rw-r-----. 1 root root 2040 6 9 05:30 configtest.bat
  12. -rwxr-x---. 1 root root 1922 6 9 05:30 configtest.sh
  13. -rwxr-x---. 1 root root 9100 6 9 05:30 daemon.sh
  14. -rw-r-----. 1 root root 2091 6 9 05:30 digest.bat
  15. -rwxr-x---. 1 root root 1965 6 9 05:30 digest.sh
  16. -rw-r-----. 1 root root 3460 6 9 05:30 setclasspath.bat
  17. -rwxr-x---. 1 root root 3708 6 9 05:30 setclasspath.sh
  18. -rw-r-----. 1 root root 2020 6 9 05:30 shutdown.bat
  19. -rwxr-x---. 1 root root 1902 6 9 05:30 shutdown.sh
  20. -rw-r-----. 1 root root 2022 6 9 05:30 startup.bat
  21. -rwxr-x---. 1 root root 1904 6 9 05:30 startup.sh
  22. -rw-r-----. 1 root root 51543 6 9 05:30 tomcat-juli.jar
  23. -rw-r-----. 1 root root 430359 6 9 05:30 tomcat-native.tar.gz
  24. -rw-r-----. 1 root root 4574 6 9 05:30 tool-wrapper.bat
  25. -rwxr-x---. 1 root root 5540 6 9 05:30 tool-wrapper.sh
  26. -rw-r-----. 1 root root 2026 6 9 05:30 version.bat
  27. -rwxr-x---. 1 root root 1908 6 9 05:30 version.sh

  1. [root@bogon apache-tomcat-8.5.81]# ll conf/
  2. 总用量 224
  3. -rw-------. 1 root root 12954 6 9 05:30 catalina.policy
  4. -rw-------. 1 root root 7707 6 9 05:30 catalina.properties
  5. -rw-------. 1 root root 1338 6 9 05:30 context.xml
  6. -rw-------. 1 root root 1149 6 9 05:30 jaspic-providers.xml
  7. -rw-------. 1 root root 2313 6 9 05:30 jaspic-providers.xsd
  8. -rw-------. 1 root root 3916 6 9 05:30 logging.properties
  9. -rw-------. 1 root root 7580 6 9 05:30 server.xml
  10. -rw-------. 1 root root 2756 6 9 05:30 tomcat-users.xml
  11. -rw-------. 1 root root 2558 6 9 05:30 tomcat-users.xsd
  12. -rw-------. 1 root root 171879 6 9 05:30 web.xml
  13. [root@bogon apache-tomcat-8.5.81]#

虚拟主机

方式1,直接放到webapps下的新建目录。

image.png
不用重启服务器

或者打成.war包。用压缩包压缩,然后进行修改扩展名

image.png

tomcat会自动解压到 当前目录,并且可以访问。
删除后,也会自动删除

原来自动解压时这里的作用,conf/server.xml
image.png

方式2,添加docbase

修改server.xml 必须重启服务器
docbase 存放的目录
path访问的路径

  1. <Host name="localhost" appBase="webapps"
  2. unpackWARs="true" autoDeploy="true">
  3. <!-- SingleSignOn valve, share authentication between web applications
  4. Documentation at: /docs/config/valve.html -->
  5. <!--
  6. <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
  7. -->
  8. <!-- Access log processes all example.
  9. Documentation at: /docs/config/valve.html
  10. Note: The pattern used is equivalent to using pattern="common" -->
  11. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  12. prefix="localhost_access_log" suffix=".txt"
  13. pattern="%h %l %u %t &quot;%r&quot; %s %b" />
  14. <Context docBase="/tmp/a" path="hehe"/>

关于tomcat中Host中appBase与docBase的关系

unpackWARs=”true” autoDeploy=”true”>
1、appBase指定的是tomcat应用的工作目录,可以使用相对路径或者绝对路径,该目录下可以有多个应用目录,如/cat 、/zipkin、/ROOT等,表示有/cat、/zipkin、/ROOT三个应用在服务;其中/ROOT是默认应用,访问的时候用ip:端口访问即可,其他的服务访问需要加上应用目录,如使用ip:端口/cat…进行访问; 2、当docBase=”/test”或者docBase=”test”时,表示修改了appBase指定的工作目录,最终的工作目录是:/webapps/test 3、当docBase=”D:\tomcacttest”,即是一个绝对路径目录,此时appBase设置失效,表示运行的是docBase目录下的应用; 4、当docBase=”D:\tomcacttest\test.war”,此时表示appBase是工作目录,此时运行的是docBase指定的这个war包,且该war包会自动解压到appBase下的ROOT目录中进行运行; 5、path=”/wang”表示给应用设置了一个上下文路径,访问时:ip:port/path/…. 6、 Context 中path必须以“/”开头;
————————————————
版权声明:本文为CSDN博主「z474198542」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/z474198542/article/details/108193808 ## 方式3、写入到单独的目录中去 在 conf/Catalina/localhost中 创建任意名称(访问路径比如:testpath.xml)的.xml文件 文件名称就是访问路径,不用设置path属性 image.png bash [root@bogon localhost]# cat /usr/local/apache-tomcat-8.5.81/conf/Catalina/localhost/testpath.xml <Context docBase="/tmp/b" reloadable="true" /> [root@bogon localhost]# image.png http://192.168.0.102:8080/testpath/b.html( 我的电脑) image.png 程序需要放到ROOT目录中去
比如appBase 设置为 /tmp/webtemp
但程序是放在 /tmp/webtemp/ROOT 里面的 ## 4、单独的域名站点 ```xml 站点1 站点二
  1. <a name="Sd9wp"></a>
  2. # 五、启动
  3. <a name="LVx9Q"></a>
  4. ## 1、脚本启动
  5. ```bash
  6. [root@bogon bin]# ./catalina.sh start
  7. 或者
  8. ./bin/startup.sh

./bin/startup.sh

2、查看

通过端口

[root@bogon bin]# netstat -ntlup

image.png

通过进程

[root@bogon bin]# ps axf
[root@bogon bin]# ps axf | more

image.png

  1. /usr/local/src/jdk1.8.0_191/jre/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.5.81/co
  2. nf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.proto
  3. col.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -
  4. classpath /usr/local/apache-tomcat-8.5.81/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.81/bin/tomcat-juli.jar -Dcatalina.base=/usr/l
  5. ocal/apache-tomcat-8.5.81 -Dcatalina.home=/usr/local/apache-tomcat-8.5.81 -Djava.io.tmpdir=/usr/local/apache-tomcat-8.5.81/temp org.ap
  6. ache.catalina.startup.Bootstrap start

2、关闭

./bin/shutdown.sh

扩展说明
https://www.cnblogs.com/kismetv/p/7228274.html#title3-1