配置前是已经安装好Tomcat了,如果你还没安装可以参考我的上一篇文章:
阿里云(Linux)centos7上安装Tomcat8.5步骤过程记录
1,为Tomcat添加启动参数pid
进入到Tomcat安装的所在位置的 /bin 目录下,我的Tomcat是安装在 /software 文件夹下面,所以命令如下。
cd /software/apache-tomcat-8.5.54/bin/
然后创建一个setenv.sh文件 ,tomcat启动的时候会调用,执行命令如下
vim ./setenv.sh
然后按 i 进入编辑模式,输入以下内容
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
#add java opts
JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
输入完成之后按ESC,然后按shift+:,接着输入wq敲回车。(wq表示保存并退出)
然后给刚刚这个文件添加执行权限,命令如下
chmod u+x setenv.sh
2,增加tomcat.service服务文件
在/usr/lib/systemd/system目录下增加tomcat.service文件,步骤如下
vim /usr/lib/systemd/system/tomcat.service
然后按 i 进入编辑模式,输入以下内容
(注意:将 /software/jdk1.8.0_251 改为自己的jdk路径
/software/apache-tomcat-8.5.54 改为自己的tomcat路径)
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment="JAVA_HOME=/software/jdk1.8.0_251"
PIDFile=/software/apache-tomcat-8.5.54/tomcat.pid
ExecStart=/software/apache-tomcat-8.5.54/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
输入完成之后按ESC,然后按shift+:,接着输入wq敲回车。(wq表示保存并退出)
注意:要确保setnev.sh,tomcat.service书写正确,符号、空格要多加留意
不然可能会导致下面这个错误
Job for tomcat.service failed because a configured resource limit was exceeded.
See "systemctl status tomcat.service" and "journalctl -xe" for details
3,配置开机启动
输入下面这个命令配置开机启动
systemctl enable tomcat.service
4,测试
输入下面这个命令,重启试一下
reboot
重启完之后,输入下面这个命令
ps -ef|grep java
如果看到下面这种结果说明Tomcat在运行,就配置成功了
或者可以用浏览器ip+端口的形式访问一下服务器试试,能不能看到Tomcat的页面。Tomcat启动可能比较慢,这种就可能需要等一下。
其他的相关命令,下面这些命令可能会用到,记录一下
启动tomcat: systemctl start tomcat
停止tomcat: systemctl stop tomcat
重启tomcat: systemctl restart tomcat
停止开机自启动: systemctl disable tomcat.service
查看服务当前状态: systemctl status tomcat.service
修改tomcat.service文件后使其生效:systemctl daemon-reload
当需要用Tomcat的UI界面来管理项目时候,就需要为Tomcat配置账号。因为现在打开是403错误的。
如下
1,进入到Tomcat的根目录
(我的Tomcat安装在/software目录)执行命令如下
cd /software/apache-tomcat-8.5.54/
2,修改tomcat-user.xml文件
在conf目录下含有一个tomcat-user.xml文件,修改它。执行命令如下
vim conf/tomcat-users.xml
然后按 i 进入编辑模式,在文件的最后面,
之前输入以下内容
(username和password改成你自己想要设置的用户名和密码)
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="admin" roles="manager-gui,admin-gui"/>
输入完成之后按ESC,然后按shift+:,接着输入wq敲回车。(wq表示保存并退出)
之前403错误是因为没有指定权限,访问tomcat中图形化管理应用的功能,也就是Manager App,就需要指定manager-gui的权限,如果想访问host manager就必须指定admin-gui权限,也就是上面的role 标签的内容。
3,重启Tomcat
因为之前已经配置了开机自启动Tomcat,所以执行下面这个命令来重启Tomcat
systemctl restart tomcat
如果你没有设置开机自启动,就去bin目录下使用下面这两个命令重启Tomcat
shutdown.sh
startup.sh
4,测试
重启服务之后,去检测是否登录成功,如果登录进入系统,则说明配置成功。
如果仍然是403错误,那就是ip受限制,进行下面这个配置
进入到Tomcat的 webapps/manager/META-INF目录下修改context.xml文件,执行命令如下
vim webapps/manager/META-INF/context.xml
按 i 进入编辑模式,将里面的allow规则改成下面这个
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />
修改好之后按ESC,然后按shift+:,接着输入wq敲回车。
然后再重启一下Tomcat,再测试一下,这次就可以登录成功了。
之后就可以给Tomcat部署项目。
部署可以参考下面这篇文章
http://blog.sina.com.cn/s/blog_e6e6428f0102xbqk.html