Web应用中设置Context Path案例详解

Web应用中设置Context Path案例详解

本文主要介绍在Web应用中设置上下文路径的详细说明。本文通过一个简单的案例来说明对这项技术的理解和使用。以下是详细内容,有需要的朋友可以参考一下。

网址:http://hostname.com/contextPath/servletPath/pathInfo

Jetty

如果没有contextPath,默认使用根上下文,根上下文的路径是“/”。

warName.war

如果没有XML IoC文件:

如果WAR的文件名是myapp.war,那么上下文路径是:/myapp;

如果WAR的文件名是ROOT.war,那么上下文路径是:/;

如果WAR的文件名是ROOT-foobar.war,那么上下文路径是/并且虚拟主机是foobar。

WEB-INF/jetty-web.xml

configure class= org . eclipse . jetty . web app . web app context

Setname=contextPath/test/Set

.

/配置

Tomcat

的单个上下文元素可以用多种方式定义:

它在Web应用程序的/META-INF/context.xml文件中定义。当Host的copyXML属性为true时,context.xml文件将被复制到$ catalina _ base/conf/[引擎名]/[主机名]目录下,并被重命名。命名规范请参考/META-INF/context.xml小节中的描述。

将XML文件直接放在$ catalina _ base/conf/[引擎名]/[主机名]目录中。文件名的规范和内容请参考META-INF/context.xml的描述。该文件的优先级高于/meta-INF/context.xml。

在Tomcat服务器的conf/server.xml文件的Host元素中定义一个上下文元素。

META-INF/context.xml

上下文名称、上下文路径、上下文版本和基本文件名之间有密切的关系:

没有contextversion,上下文名称和上下文路径相同;

如果contextpath为空字符串,则base name为ROOT。

如果contextpath不是空字符串,则base name=context path,其中第一个/字符已被删除,并且/字符已被替换为#字符。

示例:

Context Path

Context Version

Context Name

Base File Name

Example File Names

(.xml, .war directory)

/foo

没有人

/foo

富(中国姓氏)

foo.xml,foo.war,foo

/foo/bar

没有人

/foo/bar

foo #酒吧

foo#bar.xml,foo#bar.war,foo#bar

空行

没有人

空字符串

ROOT.xml,ROOT.war,ROOT

/foo

四十二个

/foo##42

福##42

foo##42.xml,foo##42.war,foo##42

/foo/bar

四十二个

/foo/bar##42

foo#bar##42

foo#bar##42.xml,foo#bar##42.war,foo#bar##42

空行

四十二个

##42

根##42

ROOT##42.xml,ROOT##42.war,ROOT##42

Server.xml

不推荐

在conf/server.xml文件中添加context元素,因为这个文件只有重启Tomcat才能重新加载,影响其他WebAPP的正常使用。

默认context.xml

Tomcat有一个默认的上下文元素。此上下文适用于所有应用程序,但它具有最低的优先级,所有配置都可以被应用程序完全覆盖。

有两种默认的context.xml:

一个是$ catalina _ base/conf/context . XML,这个context元素中的信息会被所有应用加载;

一个是$ cat elina _ base/conf/[引擎名]/[主机名]/context.xml.default .这个context元素中的信息将由这个虚拟主机中的所有应用程序加载。

这就是本文对在Web应用程序中设置上下文路径的案例的详细解释。关于在Web应用中设置上下文路径的更多相关内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!

Web应用中设置Context Path案例详解