2012-10-08 44 views
0

到目前爲止,我已經嘗試了兩種方法:
-1。添加到web.xml:在網址中無法刪除#。{jsessionid}

<session-config> 
    <tracking-mode>COOKIE</tracking-mode> 
</session-config> 

-2。使用漂亮的臉孔,添加到pretty-config.xml中:

<rewrite match="(?i)^(.*)#\.\w+(.*)" substitute="$1$2" redirect="301"/> 

-3。碼頭具體。添加到web.xml:

<context-param> 
    <param-name>org.eclipse.jetty.servlet.SessionIdPathParameterName</param-name> 
    <param-value>none</param-value> 
</context-param> 

沒有什麼幫助。 另外我不明白,「#。{jsessionid}」和「jsessionid = {jsessionid}」格式(其中{jsessionid}是一些哈希外觀字符串)之間的區別是什麼?

edit1:
它看起來像片段ID。他在我的所有網址上做什麼?

回答

0

這個散列不是jsessionid。它由addthis跟蹤附加。要禁用它使用:

<script type="text/javascript"> 
var addthis_config = { 
"data_track_addressbar" : false 
}; 
</script> 

我不知道,可能是最好刪除的問題,因爲它是一種愚蠢的。

0

除了alehro說的//重寫[http://ocpsoft.org/rewrite/]可能更適合您通過從URL和其他此類自定義任務中刪除會話ID來嘗試執行的操作。該配置更具說明性和強大功能,但也更加冗長。

這裏是你如何使用// Rewrite做同樣的事情。不需要用於前綴和後綴(p)和(S)

@Override 
public Configuration getConfiguration(final ServletContext context) 
{ 
    return ConfigurationBuilder.begin() 
     .addRule() 
     .when(Direction.isInbound() 
      .and(URL.matches("{p}{sessionID}{s}") 
       .where("sessionID").matches("#\\.\\w+")))) 
     .perform(Redirect.temporary("{p}{s}")); 
}  

URL參數默認匹配.*所以額外的配置。