Linux 环境 Tomcat 服务器配置详解
Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器。Tomcat 运行时占用的系统资源小、扩展性好、支持负载平衡与邮件服务等开发应用系统常用的功能,Tomcat 是一个小型的轻量级应用服务器。Tomcat 和 IIS、Apache 等 Web 服务器一样,具有处理 HTML 页面的功能,另外它还是一个 Servlet 和 JSP 容器,独立的 Servlet 容器是 Tomcat 的默认模式。Tomcat 处理静态 HTML 的能力不如 Apache 服务器。
一、安装 JDK
Tomcat 服务器运行需要 JDK 支持,安装 Tomcat 之前要安装 Java JDk,步骤如下:
1、把 jdk-8u162-linux-x64.tar.gz 上传到 /usr/local 目录
[root@test soft]
[root@test local]
总用量 185408
drwxr-xr-x. 2 root root 4096 9月 23 2011 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
-rw-r--r-- 1 root root 189815615 1月 23 2022 jdk-8u162-linux-x64.tar.gz
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib64
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 6月 27 21:23 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
2、解压缩文件
[root@test local]
[root@test local]
[root@test local]
[root@test local]
总用量 44
drwxr-xr-x. 2 root root 4096 9月 23 2011 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x 8 uucp 143 4096 12月 20 2017 jdk1.8
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib64
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 6月 27 21:23 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
3、配置环境变量
修改配置文件 /etc/profile,在文件结尾添加如下内容:
[root@test local]
..........
export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
4、使环境变量配置生效
[root@test local]
5、测试
[root@test tomcat8.5.75]
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)
[root@test local]
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-parameters 生成元数据以用于方法参数的反射
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-h <目录> 指定放置生成的本机标头文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-profile <配置文件> 请确保使用的 API 在指定的配置文件中可用
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
二、安装 Tomcat 服务器
1、把 apache-tomcat-8.5.75.tar.gz 上传到 /usr/local/ 目录下
[root@test local]
/usr/local
[root@test local]
[root@test local]
总用量 10392
-rw-r--r-- 1 root root 10595855 1月 23 2022 apache-tomcat-8.5.75.tar.gz
drwxr-xr-x. 2 root root 4096 9月 23 2011 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x 8 uucp 143 4096 12月 20 2017 jdk1.8
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib64
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 6月 27 21:23 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
2、解压缩文件
[root@test local]
[root@test local]
[root@test local]
[root@test local]
总用量 48
drwxr-xr-x. 2 root root 4096 9月 23 2011 bin
drwxr-xr-x. 2 root root 4096 9月 23 2011 etc
drwxr-xr-x. 2 root root 4096 9月 23 2011 games
drwxr-xr-x. 2 root root 4096 9月 23 2011 include
drwxr-xr-x 8 uucp 143 4096 12月 20 2017 jdk1.8
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib
drwxr-xr-x. 2 root root 4096 9月 23 2011 lib64
drwxr-xr-x. 2 root root 4096 9月 23 2011 libexec
drwxr-xr-x. 2 root root 4096 9月 23 2011 sbin
drwxr-xr-x. 5 root root 4096 6月 27 21:23 share
drwxr-xr-x. 2 root root 4096 9月 23 2011 src
drwxr-xr-x 9 root root 4096 11月 17 23:38 tomcat8.5.75
3、配置环境变量
修改配置文件 /etc/profile,在文件结尾添加如下内容:
[root@test local]
..........
export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
.........
export CATALINA_HOME=/usr/local/tomcat8.5.75
4、使环境变量配置生效
[root@test local]
5、Tomcat 服务器的目录结构如下
[root@test tomcat8.5.75]
/usr/local/tomcat8.5.75
[root@test tomcat8.5.75]
总用量 148
drwxr-x--- 2 root root 4096 11月 17 23:38 bin
-rw-r----- 1 root root 19481 1月 18 2022 BUILDING.txt
drwx------ 2 root root 4096 1月 18 2022 conf
-rw-r----- 1 root root 6210 1月 18 2022 CONTRIBUTING.md
drwxr-x--- 2 root root 4096 11月 17 23:38 lib
-rw-r----- 1 root root 57011 1月 18 2022 LICENSE
drwxr-x--- 2 root root 4096 1月 18 2022 logs
-rw-r----- 1 root root 1726 1月 18 2022 NOTICE
-rw-r----- 1 root root 3378 1月 18 2022 README.md
-rw-r----- 1 root root 7136 1月 18 2022 RELEASE-NOTES
-rw-r----- 1 root root 16507 1月 18 2022 RUNNING.txt
drwxr-x--- 2 root root 4096 11月 17 23:38 temp
drwxr-x--- 7 root root 4096 1月 18 2022 webapps
drwxr-x--- 2 root root 4096 1月 18 2022 work
6、启动 Tomcat 服务器
进入 bin 目录,执行 startup.sh 脚本:
[root@test tomcat8.5.75]
[root@test bin]
总用量 876
-rw-r----- 1 root root 36431 1月 18 2022 bootstrap.jar
-rw-r----- 1 root root 16840 1月 18 2022 catalina.bat
-rwxr-x--- 1 root root 25294 1月 18 2022 catalina.sh
-rw-r----- 1 root root 1664 1月 18 2022 catalina-tasks.xml
-rw-r----- 1 root root 2123 1月 18 2022 ciphers.bat
-rwxr-x--- 1 root root 1997 1月 18 2022 ciphers.sh
-rw-r----- 1 root root 25357 1月 18 2022 commons-daemon.jar
-rw-r----- 1 root root 207420 1月 18 2022 commons-daemon-native.tar.gz
-rw-r----- 1 root root 2040 1月 18 2022 configtest.bat
-rwxr-x--- 1 root root 1922 1月 18 2022 configtest.sh
-rwxr-x--- 1 root root 9100 1月 18 2022 daemon.sh
-rw-r----- 1 root root 2091 1月 18 2022 digest.bat
-rwxr-x--- 1 root root 1965 1月 18 2022 digest.sh
-rw-r----- 1 root root 3460 1月 18 2022 setclasspath.bat
-rwxr-x--- 1 root root 3708 1月 18 2022 setclasspath.sh
-rw-r----- 1 root root 2020 1月 18 2022 shutdown.bat
-rwxr-x--- 1 root root 1902 1月 18 2022 shutdown.sh
-rw-r----- 1 root root 2022 1月 18 2022 startup.bat
-rwxr-x--- 1 root root 1904 1月 18 2022 startup.sh
-rw-r----- 1 root root 51708 1月 18 2022 tomcat-juli.jar
-rw-r----- 1 root root 428057 1月 18 2022 tomcat-native.tar.gz
-rw-r----- 1 root root 4574 1月 18 2022 tool-wrapper.bat
-rwxr-x--- 1 root root 5540 1月 18 2022 tool-wrapper.sh
-rw-r----- 1 root root 2026 1月 18 2022 version.bat
-rwxr-x--- 1 root root 1908 1月 18 2022 version.sh
[root@test bin]
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8/jre
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
7、测试 Tomcat 服务器
Tomcat 服务器默认的端口为 8080,在浏览器中输入地址:http://192.168.1.13:8080/ 可以看到如下运行界面:
8、停止服务器
可以使用 ./shutdown.sh 命令来停止 Tomcat 服务器:
[root@test bin]
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8/jre
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
三、配置 Tomcat 服务器
1、设置 Tomcat 服务器自动启动
(1)将 bin/catalina.sh 拷贝到 /etc/init.d 目录下,并重命名为 tomcat
[root@test tomcat8.5.75]
[root@test tomcat8.5.75]
-rwxr-x--- 1 root root 25294 1月 18 2022 /etc/init.d/tomcat
(2)编辑 tomcat 文件,加入以下内容
[root@test bin]
./etc/init.d/functions
JAVA_HOME=/usr/local/jdk1.8
CATALINA_HOME=/usr/local/tomcat8.5.75
(3)为 tomcat 文件赋予新的权限
[root@test bin]
-rwxr-x--- 1 root root 25384 11月 19 07:43 /etc/init.d/tomcat
[root@test bin]
[root@test bin]
-rwxr-xr-x 1 root root 25384 11月 19 07:43 /etc/init.d/tomcat
(4)设置 Tomcat 服务器自动启动
[root@test bin]
[root@test bin]
(5)启动和关闭 Tomcat
[root@test bin]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
[root@test bin]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
2、配置 tomcat 服务的访问端口
Tomcat 默认访问的端口是 8080,如果需要修改,则需要修改 server.xml 文件:
[root@test conf]
/usr/local/tomcat8.5.75/conf
[root@test conf]
总用量 228
drwxr-x--- 3 root root 4096 11月 17 23:54 Catalina
-rw------- 1 root root 12954 1月 18 2022 catalina.policy
-rw------- 1 root root 7675 1月 18 2022 catalina.properties
-rw------- 1 root root 1338 1月 18 2022 context.xml
-rw------- 1 root root 1149 1月 18 2022 jaspic-providers.xml
-rw------- 1 root root 2313 1月 18 2022 jaspic-providers.xsd
-rw------- 1 root root 3916 1月 18 2022 logging.properties
-rw------- 1 root root 7580 1月 18 2022 server.xml
-rw------- 1 root root 2756 1月 18 2022 tomcat-users.xml
-rw------- 1 root root 2558 1月 18 2022 tomcat-users.xsd
-rw------- 1 root root 171879 1月 18 2022 web.xml
(1)打开文件:server.xml
把:
<Connector port="8080" protocol="HTTP/1.1"
修改为:
<Connector port="80" protocol="HTTP/1.1"
(2)重新启动 tomcat
[root@test conf]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
[root@test conf]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
(3)测试
在浏览器中输入:http://192.168.1.13,结果如下:
3、配置 tomcat 服务器的应用目录
默认情况下 tomcat 的应用目录都是 webapps,可以修改为指定的目录。
(1)修改 server.xml 文件
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Host name="localhost" appBase="/www" unpackWARs="true" autoDeploy="true">
(2)重新启动 tomcat
[root@test conf]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
[root@test conf]
/etc/init.d/tomcat: line 7: ./etc/init.d/functions: Permission denied
Using CATALINA_BASE: /usr/local/tomcat8.5.75
Using CATALINA_HOME: /usr/local/tomcat8.5.75
Using CATALINA_TMPDIR: /usr/local/tomcat8.5.75/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat8.5.75/bin/bootstrap.jar:/usr/local/tomcat8.5.75/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
(3)测试
在浏览器中输入:http://192.168.1.13,结果如下:
(4)在 /www 目录中建立目录 ROOT,并把网页文件上传到 /www/ROOT 目录
[root@test ROOT]
/www/ROOT
[root@test ROOT]
总用量 44
-rw-r--r-- 1 root root 42978 1月 25 2022 index.htm
(5)重新测试
在浏览器中输入:http://192.168.1.13,结果如下:
(6)自定义项目目录
打开 conf/server.xml 文件,在 标签中间,或者在 结束标签之间添加以下代码:
<Host name="localhost" appBase="/www"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/www" debug="0" reloadable="true" />
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
然后重新启动 tomcat 服务。此时主页文件可以直接放到 /www 目录下,而不用放到 /www/ROOT 目录下。
[root@test www]
/www
[root@test www]
总用量 48
-rw-r--r-- 1 root root 42978 1月 25 2022 index.htm
drwxr-xr-x 2 root root 4096 11月 19 13:30 ROOT
|