目录
1、下载
2、安装
2.1 上传tomcat的安装文件到指定文件夹
2.2 解压
3.启动或关闭tomcat
3.1 启动
3.2 关闭
3.3 防火墙开启端口
4、发布项目
4.1、添加管理员、密码、权限
4.2、允许admin远程访问tomcat
4.3、重启tomcat,使修改生效
4.4、通过admin用户远程发布web项目
5、Centos下设置Tomcat开机自启动
5.1、systemctl命令
5.2 tomcat增加启动参数
1、下载
下载地址: Apache Tomcat® - Welcome!
这里有Tomcat的各种版本,大家选择相应版本号。
点击 Download 后会进去另一个页面,这里可以选择我们想要版本,图中箭头指向的就是我们Linux使用的版本。
2、安装
2.1 上传tomcat的安装文件到指定文件夹
新建文件夹:
代码语言:javascript复制 mkdir /usr/local/mytools
进入文件夹后,我们就使用 rz 命令把我们下好的Tomcat上传到文件夹中
注:使用rz前记得把 lrzsz 下载了。 命令如下: yum -y install lrzsz
使用 ls 命令查询一下
2.2 解压
1.解压tomcat到指定路径
代码语言:javascript复制tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local
2.解压完成后进入tomcat的bin目录
代码语言:javascript复制cd /usr/local/apache-tomcat-8.5.20/bin
3.启动或关闭tomcat
注:一定要先进入tomcat bin目录 启动前一定要提前安装好jdk!!!! (1条消息) Linux中安装jdk_英杰的学习日记-CSDN博客
3.1 启动
代码语言:javascript复制 ./startup.sh
注1:如何查看远程服务器的日志 cd /usr/local/apache-tomcat-8.5.20/logs tail -f catalina.out #实时查看日志文件 tail -100f catalina.out #实时查看日志文件后一百行 注2:tomcat启动后,外部浏览器无法访问,原因:防火墙中8080端口未开放, 防火墙的开启详情见:目录3.3
3.2 关闭
代码语言:javascript复制 ./shutdown.sh
3.3 防火墙开启端口
1.查看防火墙状态
代码语言:javascript复制 firewall-cmd --state
2.开启防火墙
代码语言:javascript复制systemctl start firewalld.service
注: 1,设置开机自启: systemctl enable firewalld.service 2, 重启防火墙: systemctl restart firewalld.service 3, 查看防火墙设置开机自启是否成功: systemctl is-enabled firewalld.service;echo $? 4,关闭防火墙: systemctl stop firewalld.service
3.开启端口
代码语言:javascript复制firewall-cmd --zone=public --add-port=8080/tcp --permanent
注: 1.删除指定端口: firewall-cmd --zone=public --remove-port=8080/tcp --permanent 2.查询指定端口号是否开启: firewall-cmd --query-port=8080/tcp 3.查询有哪些端口是开启的: firewall-cmd --list-port
4.重启防火墙(不重启以上的设置是不会生效的)
代码语言:javascript复制firewall-cmd --reload
现在你可以去浏览器访问一下你的Tomcat了。
注:如果你使用的是服务器,记得去安全组添加8080端口。 以上步骤完成后,还是无法发布项目的
4、发布项目
4.1、添加管理员、密码、权限
代码语言:javascript复制cd /usr/local/apache-tomcat-8.5.20/conf
代码语言:javascript复制vim tomcat-users.xml
然后在<tomcat-users>标签中插入以下内容(即添加管理员、密码、权限)
代码语言:javascript复制<role rolename="manager-gui"/>
<user username="admin" password="123" roles="manager-gui"/>
4.2、允许admin远程访问tomcat
代码语言:javascript复制 cd /usr/local/apache-tomcat-8.5.20/webapps/manager/META-INF
代码语言:javascript复制vim context.xml
将Valve标签注释即可 <Context antiResourceLocking="false" privileged="true" > <!--将下面的一行代码注释即可 <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.d .d .d |::1|0:0:0:0:0:0:0:1" /> --> </Context>
将tomcat端口号port="8080"改为80 (了解如何修改tomcat的端口号即可,无需修改) cd /usr/local/java/apache-tomcat-8.5.20/conf vim server.xml <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
4.3、重启tomcat,使修改生效
代码语言:javascript复制cd /usr/local/apache-tomcat-8.5.20/bin
代码语言:javascript复制./shutdown.sh
代码语言:javascript复制 ./startup.sh
4.4、通过admin用户远程发布web项目
将项目导成war包后,浏览器访问你的tomcat,然后点击图中标红的地方。
点击进入后他会让你输入账号密码,就是我们4.1所设置的,我们会进入以下界面,点击图中标红的地方选择导入的war包。
我选择了一个hello.war
点击下图标红的地方就可以访问你刚刚上传的项目了。
但是重启服务器或者虚拟机之后,hello项目无法再次访问。
5、Centos下设置Tomcat开机自启动
5.1、systemctl命令
查看全部服务命令:systemctl list-unit-files --type service(ctrl c可以回到命令输入) 查看服务:systemctl status 服务名.service 启动服务:systemctl start 服务名.service 停止服务:systemctl stop 服务名.service 重启服务:systemctl restart 服务名.service 增加开机启动:systemctl enable 服务名.service 删除开机启动:systemctl disable 服务名.service
5.2 tomcat增加启动参数
1.在tomcat的bin目录下面,增加setenv.sh配置,catalina.sh启动的时候会调用,同时配置Java内存参数
代码语言:javascript复制vim /usr/local/apache-tomcat-8.5.20/bin/setenv.sh
在setenv.sh增加以下内容:
代码语言:javascript复制CATALINA_PID="$CATALINA_BASE/tomcat.pid"
JAVA_OPTS="-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms256M -Xmx512M -XX:MaxNewSize=128m"
注意:文件的保存路径不要搞错了“tomcat/bin/setenv.sh”
2.在/usr/lib/systemd/system目录下创建tomcat.service文件
代码语言:javascript复制注:vim编辑文件,文件不存在就创建此文件,并进行编辑
vim /usr/lib/systemd/system/tomcat.service
代码语言:javascript复制###注意:请将jdk和tomcat改为自己的安装路径
###/usr/local/jdk1.8.0_151改为自己的jdk路径
###/usr/local/apache-tomcat-8.5.20改为自己的tomcat路径
###Environment="JAVA_HOME=/usr/local/jdk1.8.0_151"这里要配置环境变量,在/etc/profile中的配置在系统服务中不生效
###[unit]配置了服务的描述,规定了在network启动之后执行。[service]配置服务的pid,服务的启动,停止,重启
###[install]配置了使用用户
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/jdk1.8.0_151"
PIDFile=/usr/local/apache-tomcat-8.5.20/tomcat.pid
ExecStart=/usr/local/apache-tomcat-8.5.20/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
3.重启系统让tomcat.service文件生效(此次tomcat还未自动启动)
代码语言:javascript复制reboot
4.接下来配置tomcat开机启动
设置tomcat开机启动:
代码语言:javascript复制systemctl enable tomcat
启动tomcat服务:
代码语言:javascript复制systemctl start tomcat
查看服务中有没有tomcat:
代码语言:javascript复制ps -ef |grep tomcat
reboot再次重启系统后,发现tomcat已自动启动了
完毕!