我有一个网络应用程序,我喜欢基于时间的会话,因此刷新页面或在另一个选项卡上重新加载保持相同。 所以,在web.xml中我有:
KitchenRule kitchenRule;
public KitchenChartView()
{
if (this.DataContext is KitchenRule)
{
this.kitchenRule = DataContext as KitchenRule;
}
}
根据我的上下文名称,cookie设置为适当的到期,其路径为/ app /。 现在,如果我向/ app /或/ app / main等URL发出请求,则会传递cookie。但是,/ app的根上下文路径不会发送cookie。即使我添加......
<servlet-mapping>
<servlet-name>any</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
<cookie-config>
<name>sid</name>
<max-age>1800</max-age>
</cookie-config>
</session-config>
...在上面的cookie-config中,浏览器中的cookie路径与/ app /相同。 这种奇怪的行为有没有解决办法?
Apache Tomcat / 8.0.28
答案 0 :(得分:1)
behvaiour并不奇怪,出于安全考虑,它是存在的。
行为也是可配置的,但请确保您了解更改默认值时的安全隐患。
配置是通过sessionCookiePathUsesTrailingSlash
中Context
元素的server.xml
属性进行的。有关详细信息,请参阅Context documentation。