web server apache tomcat11-24-Virtual Hosting and Tomcat

ops/2024/10/18 18:19:23/

前言

整理这个官方翻译的系列,原因是网上大部分的 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

web server apache tomcat11-11-Jasper 2 JSP Engine

web server apache tomcat11-12-SSL/TLS Configuration

web server apache tomcat11-13-SSI

web server apache tomcat11-14-CGI

web server apache tomcat11-15-proxy

web server apache tomcat11-16-mbean

web server apache tomcat11-17-default-servlet

web server apache tomcat11-18-clusting 集群

web server apache tomcat11-19-load balance 负载均衡

web server apache tomcat11-20-connectors 连接器

web server apache tomcat11-21-monitor and management 监控与管理

web server apache tomcat11-22-logging 日志

web server apache tomcat11-23-APR

web server apache tomcat11-24-Virtual Hosting and Tomcat

web server apache tomcat11-25-Advanced IO and Tomcat

web server apache tomcat11-26-maven jars

web server apache tomcat11-27-Security Considerations

web server apache tomcat11-28-Windows Service

web server apache tomcat11-29-Windows Authentication

web server apache tomcat11-30-The Tomcat JDBC Connection Pool

web server apache tomcat11-31-websocket

web server apache tomcat11-32-rewrite

web server apache tomcat11-33-CDI

web server apache tomcat11-34-Ahead of Time compilation support

假设

为了本教程的目的,请假设您拥有一个开发主机,其中有两个主机名,ren 和 stimpy。

还假设有一个运行的Tomcat实例,所以 $CATALINA_HOME 指的是它的安装位置,也许是 /usr/local/tomcat。

此外,本教程使用Unix风格的路径分隔符和命令;如果您使用Windows,请相应修改。

server.xml

最简单的情况下,编辑您的 server.xml 文件的 Engine 部分如下所示:

<Engine name="Catalina" defaultHost="ren"><Host name="ren"    appBase="renapps"/><Host name="stimpy" appBase="stimpyapps"/>
</Engine>

请注意,每个主机的 appBase 下的目录结构不应该相互重叠。

查阅引擎和主机元素的其他属性的配置文档。

Webapps 目录

为每个虚拟主机创建目录:

mkdir $CATALINA_HOME/renapps
mkdir $CATALINA_HOME/stimpyapps

配置您的上下文

一般

上下文通常位于 appBase 目录下。例如,要在 ren 主机中以 war 文件的形式部署 foobar 上下文,使用 $CATALINA_HOME/renapps/foobar.war。

请注意,ren 的默认或 ROOT 上下文将部署为 $CATALINA_HOME/renapps/ROOT.war(WAR文件)或 $CATALINA_HOME/renapps/ROOT(目录)。

注意: 上下文的 docBase 绝对不能与主机的 appBase 相同。

context.xml - 方法 #1

在您的上下文中,创建一个 META-INF 目录,然后将上下文定义放在其中,文件命名为 context.xml,即 $CATALINA_HOME/renapps/ROOT/META-INF/context.xml。这样做使部署更加简单,特别是如果您正在分发一个 WAR 文件。

context.xml - 方法 #2

在 $CATALINA_HOME/conf/Catalina 下创建一个与您的虚拟主机对应的结构,例如:

mkdir $CATALINA_HOME/conf/Catalina/ren
mkdir $CATALINA_HOME/conf/Catalina/stimpy

请注意,结束目录名 "Catalina" 表示与上面显示的 Engine 元素的 name 属性相对应。

现在,对于您的默认 webapps,添加:

$CATALINA_HOME/conf/Catalina/ren/ROOT.xml
$CATALINA_HOME/conf/Catalina/stimpy/ROOT.xml

如果您想要为每个主机使用Tomcat管理器web应用程序,您还需要在此处添加:

cd $CATALINA_HOME/conf/Catalina
cp localhost/manager.xml ren/
cp localhost/manager.xml stimpy/

每个主机的默认值

您可以通过在主机特定的 xml 目录中指定新值,在 conf/context.xml 和 conf/web.xml 中找到的默认值。

根据我们之前的例子,您可以使用 $CATALINA_HOME/conf/Catalina/ren/web.xml.default 来自定义命名为 ren 的虚拟主机中部署的所有 webapps 的默认值。

更多信息

请查阅上下文元素的其他属性的配置文档。


http://www.ppmy.cn/ops/20301.html

相关文章

【GNS3 GraduProj】路由器Ansible脚本测试(文件备份)

R1DhcpPoolReception.yml &#xff08;测试成功&#xff09; --- - name: Routers Configurationhosts: R1gather_facts: falseconnection: network_clitasks:- name: DHCP Configios_config:parents: "ip dhcp pool Reception"lines:- network 192.168.10.0 255.2…

责任链模式的应用

设计模式责任链模式 责任链模式介绍 概述 责任链模式是一种行为型模式。责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求…

目标检测(任务概述、机器学习时代的方法、深度学习时代的目标检测模型)

文章目录 目标检测任务概述机器学习时代的目标检测方法深度学习时代的目标检测模型基于提议的目标检测模型R-CNN 模型Fast RCNN 模型Faster RCNN 模型SSD 模型YOLO 模型 基于分割的目标检测模型FCN 模型U-Net 模型 目标检测任务概述 目标检测任务的概念&#xff1a;尝试从一张…

mysql添加普通索引(简单使用)

前言&#xff1a;以订单表&#xff08;oms_order&#xff09;为例&#xff0c;添加用户id&#xff08;user_id&#xff09;为普通索引 mysql添加普通索引&#xff08;简单使用&#xff09; 1.查看表已经存在的索引情况a.语法b.使用c.结果&#xff08;这里还没有添加所以&#…

vue的axios使用!

什么是axios? 1.axios是一个基于 promise 的 HTTP 库&#xff0c;可以用在浏览器和 node.js 中, 也是 vue 官方推荐使用的 http 库&#xff1b;封装axios&#xff0c;一方面为了以后维护方便&#xff0c;另一方面也可以对请求进行自定义处理。 如何安装&#xff1f; npm in…

Windows 11 轻量简单的美化方案

Windows 11 美化最终往往是回到最初的默认配置 每次更新版本、重装系统都要维护无疑是麻烦事 这里存一下我的简易轻量级美化&#xff0c;多数云端同步&#xff0c;开箱即用 壁纸 Wallpaper engine 直接 steam 同步即可 HDR 在 post-processing 开启 多屏支持也比较好 类…

RAG开山之作:结合参数化与非参数化记忆的知识密集型NLP任务新解法

20年RAG刚提出时的论文&#xff1a;Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks&#xff0c;也算是RAG的开山之作之一了。 摘要&#xff1a;检索增强生成&#xff08;RAG&#xff09;方法结合了预训练语言模型与基于检索的非参数化记忆&#xff0c;通过…

掌静脉识别关键技术研究综述

掌静脉识别作为一种新兴的红外生物识别技术&#xff0c;因其高安全性、活体检测性等优势已成为当前生物特征识别领域中的研究热点之一。近年来&#xff0c;该领域的大量研究通过引入深度学习方法推动了掌静脉识别技术的发展。为了掌握掌静脉识别领域最新研究现状及发展方向&…