【问题标题】:Weblogic url-rewriting true only if cookies are offWeblogic url-rewriting 仅当 cookie 关闭时才为真
【发布时间】:2014-07-31 07:08:25
【问题描述】:

我想在 weblogic 容器上部署一个应用程序,该容器仅在浏览器中禁用 cookie 时才使用 url 重写。

我需要这个,因为即使浏览器启用了 cookie,在第一次请求时会使用 url 重写。所以网址看起来像

mysite.com/go;jsessionid=YZLVTW3P1fPdLFc28BxgN72zhmXNGMpkYpwnTflDGJy9Gvp7R61n!-128874051

我希望它是这样的

mysite.com/go

如果启用了 cookie,并且仅在禁用 cookie 时附加 jsessionid。

我现在在 weblogic.xml 中有以下配置

<session-descriptor>
        <debug-enabled>true</debug-enabled>
        <persistent-store-type>replicated_if_clustered</persistent-store-type>
        <url-rewriting-enabled>true</url-rewriting-enabled>
        <cookies-enabled>true</cookies-enabled>
        <cookie-secure>true</cookie-secure>
</session-descriptor>

有没有人知道是否可以启用

<url-rewriting-enabled>true</url-rewriting-enabled>

仅当 cookie 被禁用时?

你会怎么做这样的事情? Java 代码过滤器?

更多详情: 我需要的是有这样的行为

<session-descriptor>        
        <url-rewriting-enabled>true</url-rewriting-enabled>
        <cookies-enabled>false</cookies-enabled>
    </session-descriptor> 

<session-descriptor>        
        <url-rewriting-enabled>false</url-rewriting-enabled>
        <cookies-enabled>true</cookies-enabled>
    </session-descriptor>

或者模仿这个的东西(即使是java过滤器也会很好),只有在cookie被禁用时才启用url-rewriting。正如我在第一个请求中所说,即使启用了 cookie,我也确实得到了 jsessionid。

【问题讨论】:

    标签: java cookies url-rewriting weblogic


    【解决方案1】:

    文档说如果您还打开了cookie-secure,则不应打开url-rewriting-enabled

    http://docs.oracle.com/cd/E15051_01/wls/docs103/webapp/weblogic_xml.html#wp1071982

    我发现多个其他参考资料也提到,不,您不能同时启用安全 cookie 和 url 重写。此来源更详细地介绍了每种方法的优点,以帮助您做出选择:

    http://j2eesecurity.blogspot.com/2007/11/cookies-vs-url-rewriting.html

    【讨论】:

    • 感谢您的回答,是否可以让 truefalsefalsetrue 之类的模仿这种行为。基本上我同时需要它们。
    猜你喜欢
    • 1970-01-01
    • 2020-10-06
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多