【发布时间】:2012-12-19 08:11:13
【问题描述】:
我想根据页面的内容从 Varnish 缓存中排除某些页面(例如,如果表单使用特定的隐藏字段,这是一项安全功能,并且需要在每次页面刷新时都是唯一的)。
我有几十个表单,所以我不想从缓存中单独排除每个唯一页面。
这在 VCL 中可行吗?
【问题讨论】:
标签: varnish varnish-vcl
我想根据页面的内容从 Varnish 缓存中排除某些页面(例如,如果表单使用特定的隐藏字段,这是一项安全功能,并且需要在每次页面刷新时都是唯一的)。
我有几十个表单,所以我不想从缓存中单独排除每个唯一页面。
这在 VCL 中可行吗?
【问题讨论】:
标签: varnish varnish-vcl
不,通常不会。正确的做法是在您的页面上设置缓存头(例如“Cache-Control: no-cache, must-revalidate”),并使用 varnish 依次读取的不可缓存表单。
作为一个很好的副作用,它还将取消大多数客户端缓存,这些缓存通常也会导致 CAPTCHA 等问题。
【讨论】: