一、先搞定 JDK
Tomcat 7 必须跑在 JDK 上,推荐 JDK 7 或 8(别用太新的 JDK 11+,容易出问题)。
- 检查有没有装 JDK:
java -version
- 没装就装 OpenJDK 7:
sudo yum install -y java-1.7.0-openjdk java-1.7.0-openjdk-devel
- 装完再查一次,看到
1.7.0就行。
二、解压 Tomcat
安装包下载:https://pan.quark.cn/s/43e5596ceb10,把下载好的 apache-tomcat-7.0.42.tar.gz放到 /usr/local/(习惯放这):
cd /usr/local/
tar -zxvf apache-tomcat-7.0.42.tar.gz
解压后会出现 apache-tomcat-7.0.42文件夹,这就是 Tomcat 根目录。
三、启动 Tomcat
进入 bin目录:
cd apache-tomcat-7.0.42/bin
执行启动脚本:
./startup.sh
看到 Tomcat started.就说明启动了。
四、测试访问
Tomcat 默认用 8080 端口,打开浏览器访问:
http://服务器IP:8080
本机测试就访问 http://localhost:8080,看到那只猫的欢迎页就成功了。
五、部署自己的项目
把 WAR 包扔到 webapps目录,Tomcat 会自动解压:
cp your-project.war /usr/local/apache-tomcat-7.0.42/webapps/
然后重启 Tomcat:
./shutdown.sh
./startup.sh
访问 http://服务器IP:8080/your-project就能看到项目了。
六、关闭 Tomcat
用 bin目录下的关闭脚本:
./shutdown.sh
关完可以用 ps -ef | grep tomcat确认进程没了。
七、常见问题
启动报 “JAVA_HOME 未设置”
在
bin/catalina.sh开头加一行:export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk
(路径用 `echo $JAVA_HOME`查实际的)
8080 端口访问不了
开防火墙端口:
sudo firewall-cmd --add-port=8080/tcp --permanent sudo firewall-cmd --reload
启动特别慢
在
bin/catalina.sh加 JVM 参数:export JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"