怎么设置路径contextpath

这篇文章主要介绍了怎么设置路径contextpath,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

  contextPath实际上就是部署在servlet容器中的上下文名称,因为tomcat/jetty...都可以部署多个servlet应用。

  Web应用设置ContextPath的方式

  Jetty

  如果没有contextPath,则默认使用root上下文,root上下文的路径为"/"。

  warName.war

  在没有XMLIoC文件的情况下:

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

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

  如果WAR文件名是ROOT-foobar.war,那么上下文路径是/,虚拟host是foobar。

  WEB-INF/jetty-web.xml
  [html]viewplaincopy
  <ConfigureclassConfigureclass="org.eclipse.jetty.webapp.WebAppContext">  
    <SetnameSetname="contextPath">/test</Set>  
    ...  
  </Configure>  
  Tomcat

  单独的ContextPath元素可以通过多种方式定义:

  在Web应用的/META-INF/context.xml文件中定义,当Host的copyXML属性为true的时候,context.xml文件将被拷贝到$CATALINA_BASE/conf/[enginename]/[hostname]目录下,并且重新命名,命名规范参考/META-INF/context.xml小节的说明。

  直接在$CATALINA_BASE/conf/[enginename]/[hostname]目录下放置一个XML文件,文件名规范和内容参考META-INF/context.xml小节的说明。这个文件的优先级比/META-INF/context.xml高。

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

  META-INF/context.xml

  Contextname,contextpath,contextversion和basefilename之间有一个紧密的关系:

  如果没有contextversion,那么contextname和contextpath是一样的;

  如果contextpath是空字符串,basename就是ROOT;

  如果contextpath不是空字符串,basename=contextpath,其中首/字符已经去掉,/字符换成了#字符。

感谢你能够认真阅读完这篇文章,希望小编分享的“怎么设置路径contextpath”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,更多相关知识等着你来学习!