2

所以我试图在一个用 Silex 制作的简单测试页面中获得 Varnish “HITS”。响应具有缓存所需的标头,但它没有被缓存。似乎是因为安装了 Google Analytics。

有没有办法告诉 Varnish(在 cloudControl 中)忽略 Google Analytics cookie?

在此处查看测试站点:http: //www.delphinedhaenens.be (MISS)


更新:没有分析代码缓存命中,所以我想也许 cloudControl 没有忽略新的通用分析 cookie(“_ga。”)......来自 cloudControl 的人可以确认这一点吗?

查看没有GA 代码的相同站点: http://ga-delphius.cloudcontrolled.com ( HIT)

同样,使用经典GA 代码: http: //gaclassic-delphius.cloudcontrolled.com (HIT)

4

2 回答 2

2

Cloudcontrol 路由层(*.cloudcontrolled.com) 从今天开始也在处理 GA 通用 cookie。请看一些简单的例子:

http://classic-gacachingtest.cloudcontrolled.com/

http://universal-gacachingtest.cloudcontrolled.com/

有趣的是,官方 varnish 文档建议使用规则,该规则将处理所有类型的 GA cookie,但也会剥离其他类型的 cookie,如果它们仅以不太酷的“_”开头。

于 2013-11-26T10:18:01.383 回答
0

您可以像这样__utm从客户端请求中删除 GA 设置的 cookie vcl_recv

sub vcl_recv {
    if (req.http.Cookie) {
        set req.http.Cookie = regsuball(req.http.Cookie, "(^|; ) *__utm.=[^;]+;? *", "\1");
    }
    if (req.http.Cookie ~ "^[\s;]*$") {
        unset req.http.Cookie;
    }

这将删除所有__utma, __utmb, __utmccookie 等。

于 2013-11-19T09:05:50.317 回答