web server apache tomcat11-06-Host Manager App

server/2024/9/22 15:41:19/

前言

整理这个官方翻译的系列,原因是网上大部分的 tomcat 版本比较旧,此版本为 v11 最新的版本。

开源项目

从零手写实现 tomcat minicat 别称【嗅虎】心有猛虎,轻嗅蔷薇。

系列文章

web server apache tomcat11-01-官方文档入门介绍

web server apache tomcat11-02-setup 启动

web server apache tomcat11-03-deploy 如何部署

web server apache tomcat11-04-manager 如何管理?

web server apache tomcat11-06-Host Manager App -- Text Interface

web server apache tomcat11-07-Realm Configuration

web server apache tomcat11-08-JNDI Resources

web server apache tomcat11-09-JNDI Datasource

web server apache tomcat11-10-Class Loader

...

简介

Tomcat 主机管理器应用程序使您能够在 Tomcat 中创建、删除和管理虚拟主机。本操作指南最好与以下文档一起使用:

  • 虚拟主机 How-To 获取有关虚拟主机的更多信息。
  • 主机容器 获取有关虚拟主机的底层 XML 配置和属性描述的更多信息。

Tomcat 主机管理器应用程序是 Tomcat 安装的一部分,默认情况下可以使用以下上下文访问:/host-manager。您可以以下列方式使用主机管理器:

  • 利用图形用户界面,可通过以下地址访问:{服务器}:{端口}/host-manager/html。
  • 利用一组适用于脚本编写的最小 HTTP 请求。您可以在以下地址访问此模式:{服务器}:{端口}/host-manager/text。

这两种方式都可以添加、删除、启动和停止虚拟主机。通过使用 persist 命令可以持久化更改。本文档重点介绍文本界面。有关图形界面的更多信息,请参阅主机管理器应用程序 -- HTML 界面。

配置管理器应用程序访问权限

以下描述使用 $CATALINA_HOME 来引用基本的 Tomcat 目录。它是您安装 Tomcat 的目录,例如 C:\tomcat9 或 /usr/share/tomcat9。

主机管理器应用程序需要具有以下角色之一的用户:

  • admin-gui - 对于图形 Web 界面使用此角色。
  • admin-script - 对于脚本 Web 界面使用此角色。

要启用对主机管理器应用程序文本界面的访问权限,请为您的 Tomcat 用户授予适当的角色,或创建具有正确角色的新用户。例如,打开 ${CATALINA_BASE}/conf/tomcat-users.xml 并输入以下内容:

<user username="test" password="chang3m3N#w" roles="admin-script"/>

无需进行进一步的设置。现在,当您访问 {服务器}:{端口}/host-manager/text/${COMMAND} 时,您可以使用创建的凭据登录。例如:

$ curl -u ${USERNAME}:${PASSWORD} http://localhost:8080/host-manager/text/list

命令列表

支持以下命令:

  • list
  • add
  • remove
  • start
  • stop
  • persist

在以下子节中,假设用户名和密码为 test:test。对于您的环境,请使用前面部分创建的凭据。

List 命令

使用 list 命令查看您的 Tomcat 实例上可用的虚拟主机。

示例命令:

curl -u test:test http://localhost:8080/host-manager/text/list

示例响应:

OK - Listed hosts
localhost:

Add 命令

使用 add 命令添加新的虚拟主机。用于 add 命令的参数:

  • String name: 虚拟主机的名称。必填
  • String aliases: 虚拟主机的别名。
  • String appBase: 将由此虚拟主机提供服务的应用程序的基本路径。提供相对或绝对路径。
  • Boolean manager: 如果为 true,则将 Manager 应用程序添加到虚拟主机。您可以通过 /manager 上下文访问它。
  • Boolean autoDeploy: 如果为 true,则 Tomcat 会自动重新部署放置在 appBase 目录中的应用程序。
  • Boolean deployOnStartup: 如果为 true,则 Tomcat 会在启动时自动部署放置在 appBase 目录中的应用程序。
  • Boolean deployXML: 如果为 true,则会读取并使用 /META-INF/context.xml 文件。
  • Boolean copyXML: 如果为 true,则 Tomcat 会复制 /META-INF/context.xml 文件,并使用原始副本,而不管应用程序的 /META-INF/context.xml 文件的更新。

示例命令:

curl -u test:test "http://localhost:8080/host-manager/text/add?name=www.awesomeserver.com&aliases=awesomeserver.com&appBase=/mnt/appDir&deployOnStartup=true"

示例响应:

add: Adding host [www.awesomeserver.com]

Remove 命令

使用 remove 命令删除虚拟主机。用于 remove 命令的参数:

  • String name: 要删除的虚拟主机的名称。必填

示例命令:

curl -u test:test http://localhost:8080/host-manager/text/remove?name=www.awesomeserver.com

示例响应:

remove: Removing host [www.awesomeserver.com]

Start 命令

使用 start 命令启动虚拟主机。用于 start 命令的参数:

  • String name: 要启动的虚拟主机的名称。必填

示例命令:

curl -u test:test http://localhost:8080/host-manager/text/start?name=www.awesomeserver.com

示例响应:

OK - Host www.awesomeserver.com started

Stop 命令

使用 stop 命令停止虚拟主机。用于 stop 命令的参数:

  • String name: 要停止的虚拟主机的名称。必填

示例命令:

curl -u test:test http://localhost:8080/host-manager/text/stop?name=www.awesomeserver.com

示例响应:

OK - Host www.awesomeserver.com stopped

Persist 命令

使用 persist 命令将虚拟主机持久化到 server.xml 中。用于 persist 命令的参数:

  • String name: 要持久化的虚拟主机的名称。必填

此功能默认情况下处于禁用状态。要启用此选项,您必须首先配置 Store

ConfigLifecycleListener 监听器。要执行此操作,请将以下监听器添加到您的 server.xml 中:

<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>

示例命令:

curl -u test:test http://localhost:8080/host-manager/text/persist?name=www.awesomeserver.com

示例响应:

OK - Configuration persisted

示例手动条目:

<Host appBase="www.awesomeserver.com" name="www.awesomeserver.com" deployXML="false" unpackWARs="false">
</Host>

参考资料

https://tomcat.apache.org/tomcat-11.0-doc/host-manager-howto.html


http://www.ppmy.cn/server/8056.html

相关文章

单页面首屏优化,打包后大小减少64M,加载速度快了13.6秒

需求背景 从第三方采购的vue2 ElementUI实现的云管平台&#xff0c;乙方说2011年左右就开始有这个项目了&#xff08;那时候有Vue了吗&#xff0c;思考.jpg&#xff09;。十几年的项目&#xff0c;我何德何能可以担此责任。里面的代码经过多人多年迭代可以用惨不忍睹来形容&a…

ElasticSearch 创建索引超时(ReadTimeoutError)

报错现象 在 Python 中调用 client.indices.create 来创建 ElasticSearch 索引时&#xff0c;报如下错误&#xff1a; elastic_transport.transport - INFO - PUT http://127.0.0.1:9200/document_page?timeout60s [status:N/A duration:10.011s] elastic_transport.node_po…

C#随机数

随机数&项目调试 随机数 文章目录 随机数1、创建随机数对象2、生成随机数思考 打怪兽 项目调试 1、创建随机数对象 Random r 随机数变量名 new Random();2、生成随机数 Randowm r new Random(); int i r.Next(); //生成一个非负数的随机数 Console.WriteLine(i); i …

回溯算法练习day.4

93.复原ip地址 链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 . 分隔。 例如&#xff1a;"…

[2024更新]如何从Android恢复已删除的相机照片?

相信大家都经历过Android手机误删相机图片的经历。您是否正在寻找一种可行的方法来挽救这些丢失的照片&#xff1f;如果这是你迫切想解决的问题&#xff0c;那么这篇文章绝对可以帮助你。然而&#xff0c;与其考虑如何从Android恢复已删除的相机照片&#xff0c;我们更愿意建议…

图论——基础概念

文章目录 学习引言什么是图图的一些定义和概念图的存储方式二维数组邻接矩阵存储优缺点 数组模拟邻接表存储优缺点 边集数组优缺点排序前向星优缺点链式前向星优缺点 学习引言 图论&#xff0c;是 C 里面很重要的一种算法&#xff0c;今天&#xff0c;就让我们一起来了解一下图…

12.Ribbon饥饿加载

Ribbon默认是懒加载的&#xff0c;第一次使用Ribbon访问的时候才会去实例化对象&#xff0c;所以第一次访问比较耗时。 ribbon:eager-load:enabled: true # 开启饥饿加载clients: user-service #对user-service这个服务饥饿加载 多个微服务的写法&#xff1a; ribbon:eager-loa…

Vscode | Python | launch.json配置gevent多进程断点失效问题处理

Vscode | Python | launch.json配置gevent多进程断点失效问题处理 文章目录 情况描述↓↓↓解决办法直接看这里↓↓↓ 情况描述 launch.json {// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more i…