大家好,
关于栈溢出的第一篇文章;)
我只是想了解一下清漆的工艺。我在网上还没有找到这个问题的答案。
我有一个Drupal 7网站,正在开发中,它使用Varnish (v4),一切都很好。现在Drupal站点没有生成cookie。
本网站将允许每个匿名用户管理一个"需求"(涉及多个页面),然后将该需求的内容发送到我们的后台。匿名用户没有用户管理和帐户管理。为了提高性能,我安装了清漆,但这是我第一次真正使用它。
我想实现的过程中的"需求"使用jQuery +一个cookie来存储所有相关信息。像这样,Apache (v2.4)不会在每次请求时调用。
我认为如果生成cookie, Varnish将跳过缓存过程。我想使用Varnish没有每个cookie缓存版本只针对特定的前端cookie。
所以我想知道这是否可能对Varnish说:
嘿清漆即使这个特定的cookie是存在的(我的意思是管理,cookie CRUD),不处理它并继续提供缓存页)。
如果是,你能给我解释一下逻辑吗?
提前谢谢你。
马特。
每次应用程序生成cookie时,它都会向浏览器发送一个Set-Cookie报头,以便它可以存储新的cookie。如果Varnish发现这个头,默认情况下它不缓存。这样做是为了使cookie不会错误地设置为其他人的浏览器。总之,如果你想缓存一个页面,不要在其中操作cookie。
但是您可以调用与您想要缓存的页面不同的页面,使用AJAX,这将负责cookie。这样,您的主页将被缓存,并且每次您需要插入一些cookie时,您将使用除了操作cookie之外什么都不做的另一个页面。