前言:
如今大家对“怎么访问tomcat文件夹webapps中的项目”大概比较注重,看官们都需要分析一些“怎么访问tomcat文件夹webapps中的项目”的相关知识。那么小编同时在网摘上搜集了一些有关“怎么访问tomcat文件夹webapps中的项目””的相关文章,希望各位老铁们能喜欢,姐妹们一起来学习一下吧!Tomcat Manager 是 Tomcat 的运维管理界面,可以远程部署我们自己的应用、监控应用的运行情况。
今天我要向大家介绍如何通过 Manager 界面访问 Tomcat 日志以及指定目录下的文件,实现远程运维的需求。
安装 JDK
Tomcat 依赖 JDK,所以先安装 JDK,以下操作使用 root 用户。
创建 jdk 安装目录
mkdir -p /uer/local/jdk上传 jdk-8u25-linux-x64.tar.gz 到上述目录解压
tar -xvzf jdk-8u25-linux-x64.tar.gz> 得到 jdk1.8.0_25设置系统环境变量
vi /etc/profile# 按 i 进入编辑模式,新增JAVA_HOME=/usr/local/jdk/jdk1.8.0_25/CLASSPATH=.:$JAVA_HOME/lib/tools.jarPATH=$JAVA_HOME/bin:$PATHexport PATH JAVA_HOME CLASSPATH# 按 Esc 退出编辑模式# 输入 :wq! 保存退出
让环境变量立即生效
source /etc/profile查看 jdk 版本
java -version
出现图片中内容,即表示 jdk 已安装成功!
安装 Tomcat 使用 root 用户新建一个用户,默认用户目录为:/home/alex/
useradd alex设置用户密码
passwd alex切换为 alex 用户
su - alex上传 Tomcat 安装包到用户目录下即:/home/alex/解压
tar -xvzf apache-tomcat-8.5.42.tar.gz> 得到 apache-tomcat-8.5.42赋予脚本执行权限
cd apache-tomcat-8.5.42/binchmod +x *.sh启动 Tomcat
sh startup.sh查看线程
ps -ef|grep java
浏览器访问 IP:8080 端口出现管理界面,表示 Tomcat 启动成功。配置 Manager
此时若直接点击 【Manager App】会报 :403 Access Denied,页面提示需要添加 Tomcat 管理用户才能访问。
修改 tomcat-users.xml,添加Tomcat管理用户
cd /home/alex/apache-tomcat-8.5.42/confvi tomcat-users.xml# 按 i 进入编辑模式,新增<user username="admin" password="1q2w3e" roles="manager-gui,manager-script,manager-jmx,manager-status"/># 按 Esc 退出编辑模式# 输入 :wq! 保存退出
修改 manager 的 context.xml ,默认只能本机访问,改为所有IP都可以访问
cd /home/alex/apache-tomcat-8.5.42/webapps/manager/META-INFvi context.xml# 按 i 进入编辑模式,修改 allow原来的:allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1"改为:allow="^.*$"# 按 Esc 退出编辑模式# 输入 :wq! 保存退出重启Tomcat
cd /home/alex/apache-tomcat-8.5.42/bin# 停止sh shutdown.sh# 重启sh startup.sh再次访问 Manager,出现登录界面配置日志访问目录
走到这一步,我们这篇文章主题才真正开始
修改 tomcat/conf/web.xml,开启访问静态资源开关
修改 tomcat/conf/server.xml,新增 tomcat 日志访问路径
<Context override="true" docBase="/home/alex/apache-tomcat-8.5.42/logs" path="/tomcat-logs" />
重启Tomcat查看管理界面,已经有我们的tomcat 日志路径了
点击进入,显示了tomcat/logs 下面的文件
点击 catalina.out 即可查看日志内容。
以上,便实现了通过 tomcat 管理界面获取日志文件的需求。同理,server.xml里也可以设置其它文件地址,实现远程访问的效果。
附:使用Linux部署的同学,可能会出现下面两个问题
问题1:8080 端口不能访问
如果应用启动正常(线程存在、日志没有报错),那基本就是服务器防火墙没有开启 8080端口访问权限
# 使用 root 用户添加端口访问权限/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
问题2:Manger 界面加载很慢,需要十几秒钟
先说解决办法:出现这种问题,一般是我们重新设置了服务器主机名,但没有在hosts里配置映射信息。
查看主机名
hostname> 我这台服务器的主机名为:master修改hosts
vi /etc/hosts在后面追加127.0.0.1 master
这个问题也是最近我生产部署项目出现的,上网查了资料也没有相关说明,排查了好久,最后不得已反编译了Manger,在源码中加了日志,才发现原因。
通过在源码中输出执行步骤,发现是获取host的巨慢:
使用 root 用户查看 /etc/hosts 配置,发现 主机名没有相应配置。
新增主机名映射
修改hosts后,7ms 即加载完页面,说明改对了,至此问题解决。