【问题标题】:Friendly URLs with TomcatTomcat 的友好 URL
【发布时间】:2012-01-15 00:09:11
【问题描述】:

我希望能够让 URL 转到像 http://host/Servlet/1 这样的 servlet,而不是 http://host/Servlet?ID=1

对于如何实现这一点有什么建议吗?最好也有多个级别,所以我可以做类似http://host/Servlet/1/Files

谢谢

【问题讨论】:

标签: java jakarta-ee tomcat servlets servlet-filters


【解决方案1】:

HttpServletRequest 公开了一个方法getPathInfo(),它在 servlet 路径本身之后为您提供有关请求 URL 的信息。您可以将您的 servlet 映射到 /Servlet/*,然后使用 getPathInfo() 获取 ID。

【讨论】:

  • 那将是完美的。感谢您的回答。
【解决方案2】:

如果您没有“必须单独使用 Tomcat”的要求,我建议您在 Tomcat 前面设置一个 Apache 层,您可以在其中设置此类和其他复杂的 URL 重写。

【讨论】:

    【解决方案3】:

    解决此问题的一种方法可能是让您的控制器-servlet 在前面根据来自 HttpServletRequest 上的 getRequestURI 的请求 URI 调度到后面的正确 servlet。

    【讨论】:

      【解决方案4】:

      您可以使用过滤器来做到这一点。通过一些规则分派传入的 URL 并重定向到分派的 URL。

      【讨论】:

        猜你喜欢
        • 2015-11-14
        • 1970-01-01
        • 2011-08-25
        • 2010-09-07
        • 2012-05-27
        • 2013-08-31
        • 2013-06-02
        • 2012-06-03
        相关资源
        最近更新 更多