我希望在weblogic容器上部署一个应用程序,只有在浏览器中禁用了cookie时才使用URL重写。
我需要这个,因为即使浏览器启用了cookie,在第一次请求时也会使用url-rewritting。所以网址看起来像
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。
答案 0 :(得分:2)
文档说,如果您同时启用url-rewriting-enabled
,则不应启用cookie-secure
:
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