tomcat 状态页 及常见配置

一 状态页

(一)本机查看tomcat 状态页

1, 状态页在哪

访问tomcat 默认页面中的 点击server status 这里即为状态页

因为状态页表隐私 tomcat隐藏了 我们点进去能看到位置在 ip:8080/manager/status

即在 这个位置

2,新增能访问状态页的用户

用户认证,配置文件是conf/tomcat-users.xml。打开tomcat-users.xml,我们需要一个角色manager-gui

2.1 找到配置文件

2.2 修改配置文件 在文末加上:

bash 复制代码
#加下面两行,指定用户和密码
 <role rolename="manager-gui"/>
 <user username="admin" password="123456" roles="manager-gui"/>

2.3 重启tomcat

3, 在本机访问 状态页

使用 本机浏览器 输入状态页地址 再输入刚刚生成的账户 密码

(二)开启允许远程状态页

1, 由于是访问的http://192.168.91.100:8080/manager/status manager 这个页面,所以需要manager 文件夹有权限

添加允许的 主机地址

2, 重启 tomcat

3,远程查看状态页

二 项目管理页面

三 虚拟机 管理页面

(一) 虚拟机管理页面在哪

(二)添加登录 虚拟机管理页面的 账户

此时还只能本机登录

(三) 设置远程登录

(四)远程登录 虚拟机管理页面

四 常见配置详解

(一)端口8005/tcp安全配置管理

在conf/server.xml 有以下内容8005是Tomcat的管理端口,默认监听在127.0.0.1上。无需验证就可发送SHUTDOWN (大小写敏感)这个字符串,tomcat接收到后就会关闭此Server。

bash 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
      </Host>
    </Engine>
  </Service>
</Server>

8005是Tomcat的管理端口,默认监听在127.0.0.1上。无需验证就可发送SHUTDOWN (大小写敏感)这个字符串,tomcat接收到后就会关闭此Server。

比如 telnet 127.0.0.1 8005

再输入 shutdown

此管理功能建议禁用,可将SHUTDOWN改为一串猜不出的字符串实现或者port修改成 0,会使用随机端口如:36913

port设为-1等无效端口,将关闭此功能此行不能被注释,否则无法启动tomcat服务

范例:

bash 复制代码
<Server port="8005" shutdown="44ba3c71d57f494992641b258b965f28">

(二) tomcat 端口号

8080: 默认接收 http 请求的端口

8005: 安全端口,可以关闭tomcat

8009: apache 和 tomcat 联动 AJP 协议

(三) 虚拟主机配置

可能有时候公司会有多个项目需要运行,那么肯定不可能是一台服务器上运行多个 Tomcat 服务,这样会消耗太多的系统资源。此时,就需要使用到 Tomcat 虚拟主机。

1,创建虚拟主机前,必须先创建相关目录,否则创建虚拟机不成功

2,修改配置文件

3, 客户机将域名 设置好

就可以做到 虚拟主机

五 Context配置

Context作用:

  • 路径映射:将url映射至指定路径,而非使用appBase下的物理目录,实现虚拟目录功能

  • 应用独立配置,例如单独配置应用日志、单独配置应用访问控制

bash 复制代码
#映射指定路径
<Context path="/test" docBase="/data/test" reloadable="true" />
#映射站点的根目录
<Context path="/" docBase="/data/website" reloadable="true" />
#还可以添加日志等独立的配置
<Context path="/test" docBase="/data/test" reloadable="true" >
  <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_test_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Context>

说明:

  • path:指的是访问的URL路径,如果path与appBase下面的子目录同名,context的docBase路径优先更高

  • docBase:可以是磁盘文件的绝对路径,也可以是相对路径(相对于Host的appBase)

  • reloadable:true表示如果WEB-INF/classes或META-INF/lib目录下.class文件有改动,就会将WEB应用重新加载。生产环境中,建议使用false来禁用。

相关推荐
Dola_Pan31 分钟前
Linux文件IO(二)-文件操作使用详解
java·linux·服务器
wang_book33 分钟前
Gitlab学习(007 gitlab项目操作)
java·运维·git·学习·spring·gitlab
蜗牛^^O^1 小时前
Docker和K8S
java·docker·kubernetes
从心归零2 小时前
sshj使用代理连接服务器
java·服务器·sshj
IT毕设梦工厂3 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
Ylucius4 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
七夜zippoe4 小时前
分布式系统实战经验
java·分布式
是梦终空4 小时前
JAVA毕业设计176—基于Java+Springboot+vue3的交通旅游订票管理系统(源代码+数据库)
java·spring boot·vue·毕业设计·课程设计·源代码·交通订票
落落落sss4 小时前
sharding-jdbc分库分表
android·java·开发语言·数据库·servlet·oracle
码爸4 小时前
flink doris批量sink
java·前端·flink