【问题标题】:Accept any URL in context root Websphere 6.1接受上下文根 Websphere 6.1 中的任何 URL
【发布时间】:2012-08-20 09:30:44
【问题描述】:

我目前正在尝试为我的公司开发单点登录功能。我们有一堆应用程序,每个应用程序都驻留在自己的应用程序服务器和/或 EAR 中。我们甚至会跨平台,因为并非所有 Web 应用程序都使用 WebSphere。

Websphere 中是否有一种方法允许用户在上下文根中键入任何地址,如果该页面不存在,则执行一个公共页面?

例如:

http://myhost/MyApp/login.jsp  

这将存在,转到该地址将带您进入 login.jsp 页面

http://myhost/MyApp/foo.jsp     

这将不存在,但转到它或任何其他不存在的页面将转到 foobar.jsp。用户仍应看到

http://myhost/MyApp/foo.jsp

在 URL 中,但执行 foobar.jsp 页面。

是否存在这种类型的功能,如果存在,您如何提供示例?

【问题讨论】:

    标签: url websphere-6.1 contextpath


    【解决方案1】:

    mod_rewrite 是让用户看到一个 URL 但服务器以不同的内容响应的第一件事。您可能必须列出要忽略的重写模式的所有有效 URL。

    仅使用 WebSphere,您可以使用自定义过滤器来检测所有已知的 URL,但我不知道您将如何(轻松且有效地)发送不同 JSP 的结果。我很确定这不是一些内置的、简单的功能。这部分行为有多重要?如果没有它,过滤器和重定向将满足在人们访问未知页面时将他们发送到公共页面的基本要求。

    另一个可能为您提供一些有用功能的框架是 Spring Security。

    最后,从哲学上考虑您是否真的希望不存在的 URL 像它们确实存在一样响应。这不是正常的 HTTP 模式。

    【讨论】:

      猜你喜欢
      • 2014-02-18
      • 1970-01-01
      • 2020-11-13
      • 1970-01-01
      • 2015-05-22
      • 1970-01-01
      • 2011-03-28
      • 1970-01-01
      • 2018-04-12
      相关资源
      最近更新 更多