溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Web應(yīng)用中如何設(shè)置Context Path

發(fā)布時間:2021-08-13 10:42:31 來源:億速云 閱讀:363 作者:小新 欄目:開發(fā)技術(shù)

這篇文章給大家分享的是有關(guān)Web應(yīng)用中如何設(shè)置Context Path的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Jetty

如果沒有contextPath,則默認(rèn)使用root上下文,root上下文的路徑為"/"。

warName.war

在沒有XML IoC文件的情況下:

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

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

  • 如果WAR文件名是ROOT-foobar.war,那么上下文路徑是/,虛擬host是foobar。

WEB-INF/jetty-web.xml

<Configureclass="org.eclipse.jetty.webapp.WebAppContext">
  <Setname="contextPath">/test</Set>
  ...
</Configure>

Tomcat

單獨的<context>元素可以通過多種方式定義:

  • 在Web應(yīng)用的/META-INF/context.xml文件中定義,當(dāng)Host的copyXML屬性為true的時候,context.xml文件將被拷貝到$CATALINA_BASE/conf/[enginename]/[hostname]目錄下,并且重新命名,命名規(guī)范參考/META-INF/context.xml小節(jié)的說明。

  • 直接在$CATALINA_BASE/conf/[enginename]/[hostname]目錄下放置一個XML文件,文件名規(guī)范和內(nèi)容參考META-INF/context.xml小節(jié)的說明。這個文件的優(yōu)先級比/META-INF/context.xml高。

  • 在Tomcat服務(wù)器的conf/server.xml文件的<Host>元素中定義一個<Context>元素。

META-INF/context.xml

Context name,context path,contextversion和base file name之間有一個緊密的關(guān)系:

  • 如果沒有contextversion,那么context name和context path是一樣的;

  • 如果contextpath是空字符串,base name就是ROOT;

  • 如果contextpath不是空字符串,base name=context path,其中首/字符已經(jīng)去掉,/字符換成了#字符。

舉例說明:

Context PathContext VersionContext NameBase File NameExample File Names (.xml, .war & directory)
/fooNone/foofoofoo.xml, foo.war, foo
/foo/barNone/foo/barfoo#barfoo#bar.xml, foo#bar.war, foo#bar
空字符串NoneEmpty StringROOTROOT.xml, ROOT.war, ROOT
/foo42/foo##42foo##42foo##42.xml, foo##42.war, foo##42
/foo/bar42/foo/bar##42foo#bar##42foo#bar##42.xml, foo#bar##42.war, foo#bar##42
空字符串42##42ROOT##42ROOT##42.xml, ROOT##42.war, ROOT##42

Server.xml

不推薦在conf/server.xml文件中添加<context>元素,因為只有重啟Tomcat才能重新加載這個文件,影響其他WebAPP的正常使用。

默認(rèn)context.xml

Tomcat有默認(rèn)的context元素,這個context適用于所有應(yīng)用程序,但是它的優(yōu)先級也是最低,所有配置可以被應(yīng)用全部覆蓋。

默認(rèn)的context.xml有兩種:

  • 一種是$CATALINA_BASE/conf/context.xml,這個context元素中的信息會被所有應(yīng)用加載; 

  • 一種是$CATELINA_BASE/conf/[enginename]/[hostname]/context.xml.default,這個<context>元素中的信息會被這個虛擬Host中的所有應(yīng)用加載。

感謝各位的閱讀!關(guān)于“Web應(yīng)用中如何設(shè)置Context Path”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI