Servache映射在apache tomcat 6.0.20中

Sch*_*jer 2 java tomcat servlets

我不确定它可以做我想做的事情.我想将一个servlet映射到两个不同的URL.

我希望http://10.0.0.1/ahttp://10.0.0.1/b都映射到同一个servlet.

我知道可以在web.xml中执行以下操作;

  <servlet-mapping>
    <servlet-name>ServletName</servlet-name>
    <url-pattern>/b</url-pattern>
  </servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

但是这会启用以下网址:http://10.0.0.1/ContextPath/b/

Dav*_*itz 6

您可以执行以下操作:

  <servlet-mapping>
    <servlet-name>ServletName</servlet-name>
    <url-pattern>/a</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>ServletName</servlet-name>
    <url-pattern>/b</url-pattern>
  </servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

然后http:// host/webapp/ahttp:// host/webapp/b将映射到同一个servlet.

如果要删除/ webapp前缀,则需要将Web应用程序设置为ROOT,方法是将上下文的路径属性设置为上下文xml文件中的""(在webapps下或META-INF/context.xml中)