本文操作仅供参考,西北民族大学21级计科2班WEB开发基础91704X08教师孟老师课程笔记
[前提环境]
首先有一台Linux服务器,笔者的服务器为centos7.9环境为Java17,并且能够链接SSH
笔者使用远程工具进行链接并安装

安装
在Apache Tomcat官网下载安装包(过程中可能需要用到加速器进行加速下载)并上传到服务器

笔者将安装包上传到服务器的/www/Tomcat文件夹中
并使用tar -xzvf [文件名].tar.gz解压
- -x 表示解压
- -z 表示使用 gzip 解压
- -v 表示显示详细过程
- -f 表示指定文件名。
解压完毕后在/www/Tomcat/apache-tomcat-10.1.13中
尝试运行tomcatsudo /www/Tomcat/apache-tomcat-10.1.13/bin/startup.sh

出现&解决问题:打开ip:8080无效
开放防火墙并打开默认端口8080后,发现无法链接到网页,在服务器上也发现8080端口没有被使用
解决想法1——把端口调为8880
打开/www/Tomcat/apache-tomcat-10.1.13/conf/server.xml,修改以下代码
1 | <Connector port="8080" protocol="HTTP/1.1" |
修改为port=”8880”
使用sudo /www/Tomcat/apache-tomcat-10.1.13/bin/shutdown.sh关闭时报错
1 | Using CATALINA_BASE: /www/Tomcat/apache-tomcat-10.1.13 |
解决想法2——删除JRE_HOME环境变量
笔者cd到文件夹下使用./startup.sh后出现以下报错,并且分析Java路径后发现问题
可能是在同时拥有jdk和jre时优先选择jre,以前的jre的路径存在问题,此时打开/etc/profile发现环境配置确实存在问题
JRE_HOME以及不存在了可是并没有删去,我们将其删去,并使用source /etc/profile加载配置
解决想法3——添加JRE_HOME变量
还是报错

此时发现是没有添加RE_HOME导致的,此时我们需要新增一个变量,因为笔者使用的是jdk,所以JRE_HOME也设置成和JAVA_HOME一样的路径,并使用source /etc/profile加载配置

发现正常运行
解决成功
打开设置的8880端口发现成功开启Tomcat

使用ps aux |grep tomcat命令查看tomcat运行状态

发现有多个tomcat运行,原因是因为之前的命令加上了sudo,初步认为sudo用的环境变量有问题
不同发行版配置的sudo缺省配置不同,结果就是sudo环境中的环境变量不同。
有的sudo,使用当前用户的环境,仅仅只更改PATH等极少数的环境,同时具有管理员权限,尤其是HOME仍然指向当前用户的HOME而不是root用户的HOME。
有的sudo,是直接把当前环境改为root的环境,当前用户名以及很多相关的环境变量都改变了,HOME变成了root的HOME,所以会安装到完全不同的路径。
两种sudo各有各的用途,我个人是倾向于保持环境的做法的。当然如果你不希望完全依赖发行版来决定其行为,那么就自己改一下sudo的配置文件,以确认这个行为是你想要的那种样子。
作者:pansz
链接:https://www.zhihu.com/question/317677918/answer/633972195
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
使用命令ps -ef | grep tomcat | grep -v grep | awk '{print $2}' | xargs kill -9将其全部删除
在使用/www/Tomcat/apache-tomcat-10.1.13/bin/startup.sh启动即可

添加计划任务
添加计划任务,执行时间为每天凌晨3:30(凌晨服务器压力小适合刷新任务)
计划任务代码如下
1 | ps -ef | grep tomcat | grep -v grep | awk '{print $2}' | xargs kill -9 |
将Tomcat所有进程删除后再启动startup.sh并将日志保存在Tomcat启动服务日志.log中

可能是宝塔计划任务的原因,发现有进程可能没有启动
我们编写以下代码
1 | !/bin/bash |
代码以及解释说明详见Linux下的进程守护脚本代码示例(守护Tomcat服务)
使用*nohup ./daemon.sh &*即可
问题发现与解决
1 | proc_result=`curl ${HREF}` |
此处判断有问题,判断”OK” = “$proc_result”时如果直连网页会一直不正常并重启

所以我们应该建立一个文件仅只有ok的一个,所以我们在目录下建立一个isrun.txt文件来判断服务是否正常运行即可,isrun.txt文件内容为OK即可,将QZ_HREF='http://localhost:8880'改为QZ_HREF='http://localhost:8880/isrun.txt'
判断成功

web站点建设
修改根路径
修改Tomcat主配置文件conf/server.xml
在尾端添加以下代码
1 | <Context path="" docBase="/www/wwwroot/jike" /> |
其中,path为根目录为/,基本路径为/www/wwwroot/jike
添加主页文件
在基本路径下添加index.jsp
添加内容如下
1 | <%@ page language="java" %> |
重启tomcat
成功

添加反向代理以及防火墙
互联网是一个混乱的网络,期间充斥着许多攻击,所以我们加上防火墙并进行反向代理以及开启应用防火墙WAF
反向代理主要逻辑如下



信息安全保障概述
本章概述了信息安全保障的相关内容。信息技术发展产生的影响、信息安全发展阶段及其含义、信息安全保障基本体系框架、国内外实践概况和信息安全保障的基本工作内容
--- over ---
- 本文链接: https://i-nmb.cn/Installation-Of-Tomcat.html
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。