在 Tomcat 上播放框架 1.x - httpOnly cookie

Posted

技术标签:

【中文标题】在 Tomcat 上播放框架 1.x - httpOnly cookie【英文标题】:Play framework 1.x on Tomcat - httpOnly cookies 【发布时间】:2012-11-09 03:57:25 【问题描述】:

我在 application.conf 中设置 application.session.httpOnly=true 并生成一个 war 文件并部署在 tomcat 上。

我仍然看到生成为 HttpOnly=No 的 cookie,并且它是可编辑的。

这是在 tomcat 6(即 servlet api 2.x)上运行的 play 1.x 的问题。显然,cookie 的 http only 标志仅在 servlet 3.0 中引入,因此仅在 tomcat 7+ 中可用

到目前为止,有没有人为此确定了解决方法(所以我可以在 tomcat 6.x 上为 play 1.x 设置 http only cookie)? tomcat 中上下文的 httpOnly 标志仅适用于 tomcat 的 jsessionid cookie...

另外,我可以在 servlet 3.0 上运行 play 1.x 应用吗?

PS:这也发布在 play framework 的 google groups 上,但我们没有收到回复,因此在 SO 上发布。

【问题讨论】:

【参考方案1】:

您应该能够在 tomcat 7 中运行该应用程序。原因是尽管您将部署一个 War 文件,但 Play 没有使用任何 Servlet API,所以这应该不是问题。也就是说,问题可能出在生成 War 文件的插件上,恐怕我没有这方面的经验。

在解决方法上,唯一的办法是使用 Play 提供的集成服务器。如果您在 Tomcat 中运行,Tomcat 会设置规则,因此不会为您设置 HttpOnly。如果您使用集成的 Netty,那么您将拥有它。

【讨论】:

不是我希望的答案,但我会接受现实:-)

以上是关于在 Tomcat 上播放框架 1.x - httpOnly cookie的主要内容,如果未能解决你的问题,请参考以下文章

播放框架 1.x 上的电子邮件模板国际化/本地化

以 1.5x、2x 速度播放视频文件

简单Tomcat HTTP RPC框架

ssm 框架 -- eclipse4.6 安装插件 tomcat

带有反应前端的播放框架java后端不返回正确的http响应

在生产模式下播放框架2.3.8混合内容