我正在尝试实现一个所有 cookie 的安全标志。我通过 Headers 执行此操作。
以下是我的做法:
Header edit Set-Cookie (?i)^(.*)(;\s*secure)??((\s*;)?(.*)) "$1; Secure$3$4"
第一次加载时,它成功完成了任务。但在第二次加载时,无论是刷新浏览器还是在地址栏中按 Enter 键,标题不再存在并且 cookie 不再通过安全标志提供。
这是正常的浏览器行为吗?我的设置有什么问题?
谢谢。
更新(仍然没有按预期工作)
- 我的问题是,重新加载页面后,HttpOnly 和 Secure 标志不会保留。显然这不是正常的浏览器行为。我测试了其他方面,重新加载后它们的标志仍然存在。所以这都是我的问题...
- 我把标题编辑 Set-Cookie?我在主配置 (apache.conf) 中尝试过,在包含文件和 VirtualHost 中也尝试过。但似乎都不起作用。
- 我也尝试了其他变体/语法,
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
但问题相同。
更新(FireBug) 尝试使用 FireBug 运行它。检查来自网将显示安全的和HttpOnly第二次加载时已删除标志。第一次加载时它们还在。但从饼干标签(旁边网),它表明 Secure 和 HttpOnly 标志已执着的。为啥会这样呢?