以下是在CentOS 7、Fedora 29、Fedora 28操作系统上安装Apache Tomcat 9的详细步骤,还介绍添加Tomcat用户和组、创建Tomcat Systemd服务、配置身份验证等内容。
步骤一、禁用SELinux并安装curl 由于我们将以tomcat用户身份运行tomcat服务,因此在许可模式下禁用或设置SELinux: sudo yum -y install curl vim wget sudo setenforce 0 sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config 要完全禁用它,请运行: sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config sudo reboot 最后一段是重新启动系统。
步骤二、在CentOS 7/Fedora 29上安装OpenJDK 11 需要在CentOS 7/Fedora 29系统上安装OpenJDK 11,因为它是Tomcat依赖项,请参考在CentOS 7/Fedora 29系统上安装Java 11的方法。
步骤三、在CentOS 7/Fedora 29系统上安装Apache Tomcat 9 安装OpenJDK 11后,继续在CentOS 7/Fedora 29上下载并安装Tomcat 9,本文以安装9.0.8为例: curl -O https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz tar xvf apache-tomcat-9.0.8.tar.gz 将生成的文件夹移动到/usr/libexec/tomcat9: sudo mv apache-tomcat-9.0.8 /usr/libexec/tomcat9
步骤四、添加Tomcat用户和组 我们需要添加一个用户来管理Tomcat,该用户将被命名为tomcat: sudo groupadd --system tomcat sudo useradd -M -d /usr/libexec/tomcat9 -g tomcat tomcat 将/usr/libexec/tomcat9的所有权更改为tomcat用户和组: sudo chown -R tomcat:tomcat /usr/libexec/tomcat9
步骤五、创建Tomcat Systemd服务 最后一步是为tomcat创建一个服务单元文件,在以下位置创建新文件: sudo vim /etc/systemd/system/tomcat9.service 然后增加以下代码: [Unit] Description=Apache Tomcat 9 Documentation=http://tomcat.apache.org/tomcat-9.0-doc/ After=network.target syslog.target [Service] User=tomcat Group=tomcat Type=oneshot ExecStart=/usr/libexec/tomcat9/bin/startup.sh ExecStop=/usr/libexec/tomcat9/bin/shutdown.sh RemainAfterExit=yes [Install] WantedBy=multi-user.target 重新加载systemd并启动tomcat9服务: sudo systemctl daemon-reload sudo systemctl restart tomcat9.service 你可以使用以下方法检查服务是否正常: $ sudo systemctl status tomcat9.service
该服务应该在端口8080上侦听: $ sudo ss -tunelp | grep 8080 tcp LISTEN 0 100 *:8080 *:* users:(("java",pid=3241,fd=37)) uid:1001 ino:29845 sk:a v6only:0 <-> 如果有活动的防火墙服务,请允许端口8080: sudo firewall-cmd --add-port=8080/tcp sudo firewall-cmd --reload Tomcat默认网站在[http://(server's hostname or IP address):8080/],请更改为自己的地址:
管理指南可在http://<IP>:8080/docs/index.html上找到。
步骤六、使用Apache HTTP服务器对Tomcat进行代理传递访问(可选) 你可以配置Apache http服务器以访问Tomcat接口,而无需指定端口8080。 安装并启动Apache Web服务器: sudo yum -y install httpd sudo systemctl start httpd && sudo systemctl enable httpd sudo firewall-cmd --add-service=http --permanent sudo firewall-cmd --reload 创建tomcat配置文件: sudo vim /etc/httpd/conf.d/proxy_tomcat.conf 加上: ProxyPass /tomcat9/ ajp://localhost:8009/ 访问[http://(server's hostname or IP address)/tomcat9/]并确认更改按预期工作。
步骤七、配置身份验证 创建Tomcat用户以访问Tomcat管理器: sudo vim /usr/libexec/tomcat9/conf/tomcat-users.xml 将以下行添加到文件中: <role rolename="admin-gui" /> <user username="admin" password="StrongPassword" roles="manager-gui,admin-gui" </tomcat-users> 请用实际管理员密码替换StrongPassword。
相关主题 |