------------恢复内容开始------------

1,下载tomcat安装包

https://mirrors.cnnic.cn/apache/tomcat/

我下载的版本

https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.57/bin/apache-tomcat-8.5.57.tar.gz

2,解压文件,

tar -zxvf apache-tomcat-8.5.57.tar.gz

mv apache-tomcat-8.5.57 /usr/local/tomcat

3,启动tomcat

在tomcat/bin 目录下 有startup.sh 和shutdown.sh

startup.sh 是开启tomcat

shutdown.sh 是关闭tomcat

在bin目录下 执行

./startup.sh

4,开放8080 端口

通过修改配置文件或者命令都可以,我的centos7直接用命令就行

systemctl start firewalld  # 启动friewall

systemctl status firewalld # 查看firewall启动情况

firewall-cmd --zone=public --add-port=8080/tcp --permanent   # 开启8080端口

firewall-cmd --reload #重启 

firewall-cmd --query-port=8080/tcp 查看8080端口是否开启

5,登陆 http://ip:8080 看能否连接上

我的是http://192.168.0.233:8080

 

6,给tomcat设置用户名和密码

在tomcat/conf下有一个文件叫 tomcat-user.xml

在tomcat-user 标签前添加

<role rolename="admin-gui"/>     

<role rolename="manager-gui"/>     

<user username="tomcat" password="admin" roles="manager-gui,admin-gui"/>

 如果点击manager app 之类的还报403错误

则去tomcat/webapps/manager/META-INF/目录下context.xml文件

将原本的数据注释掉或修改为

<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+" />

重启tomcat 

7,添加tomcat为系统服务,可以开机自启

*在tomcat目录下信建tomcat.pid文件,与bin目录平级

*在tomcat/bin目录下新建setenv.sh配置,catalina.sh启动的时候会调用,同时配置Java内存参数。配置一下代码

  1. #add tomcat pid  
  2. CATALINA_PID="$CATALINA_BASE/tomcat.pid"  
  3. #add java opts  
  4. JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m" 

*在/usr/lib/systemd/system目录下信建tomcat.service 文件,配置一下代码,注意java的路径

  1. [Unit]
  2.  
    Description=Tomcat
  3.  
    After=syslog.target network.target remote-fs.target nss-lookup.target
  4.  
     
  5.  
    [Service]
  6.  
    Type=forking
  7.  
    Environment="JAVA_HOME=/usr/java/jdk1.8.0_202"
  8.  
    PIDFile=/usr/local/tomcat/tomcat.pid
  9.  
    ExecStart=/usr/local/tomcat/bin/startup.sh
  10.  
    ExecReload=/bin/kill -s HUP $MAINPID
  11.  
    ExecStop=/bin/kill -s QUIT $MAINPID
  12.  
    PrivateTmp=true
  13.  
     
  14.  
    [Install]
  15.  
    WantedBy=multi-user.target

配置开机启动 

systemctl enable tomcat

启动tomcat
systemctl start tomcat
停止tomcat
systemctl stop tomcat
重启tomcat
systemctl restart tomcat

因为配置pid,在启动的时候会再tomcat根目录生成tomcat.pid文件,停止之后删除。

同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。

多个tomcat可以配置在多个目录下,互不影响。

修改tomcat.service文件后需要执行下面命令使其生效:
systemctl daemon-reload
查询tomcat 进程  ps -ef | grep "tomcat"| grep -v grep
如果多个tomcat,则拷贝到不同的目录,使用不同的端口。tomcat.service文件名不同即可。
例如:tomcat1.service tomcat2.service tomcat3.service