在我的 Plone 站点上,当用户转到特定页面 P,然后单击“登录”并成功完成登录过程时,她将被重定向到主页或随机页面,而不是页面 P。
我认为这是因为页面/login_form 是从 Varnish 缓存提供的,并且在缓存时包含其他用户隐藏的 came_from 字段:
什么是防止缓存/login_form 以及其他具有相同机制的页面的好方法?
缓存配置工具 (CacheFu/CacheSetup) 不应该处理这个问题并使用/login_form 发送 header 以防止缓存吗?
我在 Plone's documentation on Varnish 中找不到有关此问题的任何信息。
我在 Debian Linux 7.6 上使用带有缓存配置工具 (CacheSetup 1.2.1) 和 Varnish 3.0.2 的 Plone 3.3.5(客户端 < Apache < Varnish < Plone)。
最佳答案
不熟悉Plone,我无法评论Plone的最终配置。但是为了防止/login_form
URL被缓存,您可以使用以下vcl_recv()
sub vcl_recv {
if (req.url == "/login_form") {
return(pass);
}
}
关于caching - 我如何防止Varnish在Plone前面缓存/login_form,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26191762/