目录
前 言
Tomcat是一个开源的、轻量级的Web服务器,它可以运行Java Servlet和JavaServer Pages等Web应用程序。Tomcat具有高度的灵活性和可扩展性,是Web开发人员的首选之一。使用Tomcatlinux下的tomcat下载,您可以快速布署Web应用程序,并进行调试和管理。Tomcat也被广泛用于生产环境中,因为它稳定、安全、高效。无论您是初学者还是资深开发人员,Tomcat都是您不可或缺的工具之一。
1、百度搜索tomcat
也可以通过链接直接访问tomcat官网Apache Tomcat
2、进入tomcat官网,下载tomcat8
使用 cd /opt 进入到 opt 目录下,在输入 ls 命令可以看见如下图橙色的文件就是上传 tomcat 压缩包。
3、安装JDK、解压tomcat
[root@localhost ~] java -version #有响应说明已经安装了,下面的命令不用执行
[root@localhost ~] yum install -y java
[root@localhost ~] java -version
输入 java -version 有反应如下:有反应则跳过安装 JDK 部分,执行解压tomcat。
[root@localhost ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
如果没有反应则如下:
[root@localhost ~]# java -version
-bash: /usr/bin/java: No such file or directory
我们就须要安装JDK,输入安装命令 yum install -y java。
[root@localhost ~]# yum install -y java
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
rh | 4.3 kB 00:00:00
Resolving Dependencies
--> Running transaction check
---> Package java-11-openjdk.x86_64 1:11.0.ea.28-7.el7 will be installed
--> Processing Dependency: java-11-openjdk-headless(x86-64) = 1:11.0.ea.28-7.el7 for package: 1:java-11-openjdk-11.0.ea.28-7.el7.x86_64
--> Processing Dependency: libjava.so()(64bit) for package: 1:java-11-openjdk-11.0.ea.28-7.el7.x86_64
--> Processing Dependency: libjvm.so()(64bit) for package: 1:java-11-openjdk-11.0.ea.28-7.el7.x86_64
--> Running transaction check
---> Package java-11-openjdk-headless.x86_64 1:11.0.ea.28-7.el7 will be installed
--> Processing Dependency: tzdata-java >= 2015d for package: 1:java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64
--> Processing Dependency: javapackages-tools for package: 1:java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64
--> Running transaction check
---> Package javapackages-tools.noarch 0:3.4.1-11.el7 will be installed
--> Processing Dependency: python-javapackages = 3.4.1-11.el7 for package: javapackages-tools-3.4.1-11.el7.noarch
---> Package tzdata-java.noarch 0:2018e-3.el7 will be installed
--> Running transaction check
---> Package python-javapackages.noarch 0:3.4.1-11.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================================
Package Arch Version Repository Size
====================================================================================================
Installing:
java-11-openjdk x86_64 1:11.0.ea.28-7.el7 rh 189 k
Installing for dependencies:
java-11-openjdk-headless x86_64 1:11.0.ea.28-7.el7 rh 38 M
javapackages-tools noarch 3.4.1-11.el7 rh 73 k
python-javapackages noarch 3.4.1-11.el7 rh 31 k
tzdata-java noarch 2018e-3.el7 rh 184 k
Transaction Summary
====================================================================================================
Install 1 Package (+4 Dependent packages)
Total download size: 39 M
Installed size: 161 M
Downloading packages:
----------------------------------------------------------------------------------------------------
Total 74 MB/s | 39 MB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
** Found 9 pre-existing rpmdb problem(s), 'yum check' output follows:
icedtea-web-1.7.1-1.el7.x86_64 has missing requires of java-1.8.0-openjdk
icedtea-web-1.7.1-1.el7.x86_64 has missing requires of jpackage-utils
icedtea-web-1.7.1-1.el7.x86_64 has missing requires of jpackage-utils
jline-1.0-8.el7.noarch has missing requires of java >= ('0', '1.5', None)
jline-1.0-8.el7.noarch has missing requires of jpackage-utils
rhino-1.7R5-1.el7.noarch has missing requires of jpackage-utils
rhino-1.7R5-1.el7.noarch has missing requires of jpackage-utils
tagsoup-1.2.1-8.el7.noarch has missing requires of jpackage-utils
tagsoup-1.2.1-8.el7.noarch has missing requires of jpackage-utils >= ('0', '1.6', None)
Installing : tzdata-java-2018e-3.el7.noarch 1/5
Installing : python-javapackages-3.4.1-11.el7.noarch 2/5
Installing : javapackages-tools-3.4.1-11.el7.noarch 3/5
Installing : 1:java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64 4/5
Installing : 1:java-11-openjdk-11.0.ea.28-7.el7.x86_64 5/5
Verifying : python-javapackages-3.4.1-11.el7.noarch 1/5
Verifying : 1:java-11-openjdk-11.0.ea.28-7.el7.x86_64 2/5
Verifying : 1:java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64 3/5
Verifying : tzdata-java-2018e-3.el7.noarch 4/5
Verifying : javapackages-tools-3.4.1-11.el7.noarch 5/5
Installed:
java-11-openjdk.x86_64 1:11.0.ea.28-7.el7
Dependency Installed:
java-11-openjdk-headless.x86_64 1:11.0.ea.28-7.el7 javapackages-tools.noarch 0:3.4.1-11.el7
python-javapackages.noarch 0:3.4.1-11.el7 tzdata-java.noarch 0:2018e-3.el7
Complete!
输入 java -version 验证是否安装成功,如下早已成功安装 JDK。
[root@localhost ~]# java -version
openjdk version "11-ea" 2018-09-25
OpenJDK Runtime Environment (build 11-ea+28)
OpenJDK 64-Bit Server VM (build 11-ea+28, mixed mode, sharing)
解压 tomcat
[root@localhost ~]# tar -zxvf apache-tomcat-8.5.89.tar.gz #解压tomcat
[root@localhost ~]# mv apache-tomcat-8.5.89 tomcat8 #将apache-tomcat-8.5.68文件夹重命名为tomcat8。
[root@localhost]# cd tomcat8/bin/
[root@localhost bin]# ls
bootstrap.jar ciphers.sh daemon.sh shutdown.bat tomcat-native.tar.gz
catalina.bat commons-daemon.jar digest.bat shutdown.sh tool-wrapper.bat
catalina.sh commons-daemon-native.tar.gz digest.sh startup.bat tool-wrapper.sh
catalina-tasks.xml configtest.bat setclasspath.bat startup.sh version.bat
ciphers.bat configtest.sh setclasspath.sh tomcat-juli.jar version.sh
启动tomcat,###注意必须在bin 目录下执行 ./startup.sh
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /opt/software/tomcat8
Using CATALINA_HOME: /opt/software/tomcat8
Using CATALINA_TMPDIR: /opt/software/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/software/tomcat8/bin/bootstrap.jar:/opt/software/tomcat8/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
4、测试
如果未能访问可能出现的问题:
1、防火墙可能会制止对Tomcat的访问。可以尝试关掉防火墙
2、8080 端口冲突问题:检查Tomcat运行的端口是否和其他进程的端口冲突。可以使用命令netstat -lnp来列举所有正在运行的进程和它们窃听的端口,以确定是否存在端口冲突问题。
检查防火墙设置并确保Tomcat所使用的端口(默认为8080)未被制止。此外,还要复查该端口是否已被其他应用程序占用。你可以使用以下命令检测端口占用情况:lsof -i :8080
[root@localhost bin]# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 19057 root 40u IPv6 75928 0t0 TCP *:webcache (LISTEN)
这里8080端口没有被占用。
我们选择关掉防火墙。
使用命令关掉防火墙:
systemctl stop firewalld
使用命令永久关掉防火墙:
systemctl disable firewalld
注意:关闭防火墙会导致系统安全性增长,请慎重操作。需要开启防火墙,可以使用以下命令:
systemctl start firewalld
systemctl enable firewalld
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #永久关闭防火墙
systemctl start firewalld #开启防火墙
systemctl enable firewalld #设置为开机启动防火墙
在浏览器中输入服务器的域名或IP地址,您将见到 Tomcat 默认页面,因为没有布署任何内容。
5、点击 Manager App 报错解决办法
5、1 修改vim /opt/tomcat8/conf/tomcat-users.xml文件
Vim编辑器使用:按下 i键,在文本编辑窗口顶部出现INSERT或--插入--,表示步入插入模式linux操作系统怎么样深度linux系统,此时可以开始输入文本了。
保存:按下ESC键linux下的tomcat下载,退出插入模式,进入命令模式。输入 :wq,按下回车键即可保存文本。
Esc #退出编辑模式
:wq #保存退出
:q! #不保存退出
命令行输入:vim /opt/tomcat8/conf/tomcat-users.xml 点击 Enter 回车键 ,如下图:
vim /opt/tomcat8/conf/tomcat-users.xml
#添加上面的内容
5、2更改 vim /opt/tomcat8/webapps/manager/META-INF/context.xml
命令行输入:vim /opt/tomcat8/webapps/manager/META-INF/context.xml 点击 Enter 回车键 ,如下图:
vim /opt/tomcat8/webapps/manager/META-INF/context.xml
#注释掉这个配置
5、3重启tomcat
[root@localhost bin]# ./shutdown.sh
[root@localhost bin]# ./startup.sh
[root@localhost bin]# ./shutdown.sh
Using CATALINA_BASE: /opt/tomcat8
Using CATALINA_HOME: /opt/tomcat8
Using CATALINA_TMPDIR: /opt/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat8/bin/bootstrap.jar:/opt/tomcat8/bin/tomcat-juli.jar
Using CATALINA_OPTS:
NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /opt/tomcat8
Using CATALINA_HOME: /opt/tomcat8
Using CATALINA_TMPDIR: /opt/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat8/bin/bootstrap.jar:/opt/tomcat8/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
点击Manager App 报错,已得到解决
输入用户名密码,用户名密码在更改的vim /opt/tomcat8/conf/tomcat-users.xml 里可以看见
#username="tomcat" #用户名是tomcat
#password="000000" #密码是000000
###自己也可以通过修改 vim /opt/tomcat8/conf/tomcat-users.xml 文件自定义用户名密码
登录来到Tomcat Web应用程序管理者