在 503 页面上使用 Google Analytics

Posted

技术标签:

【中文标题】在 503 页面上使用 Google Analytics【英文标题】:Using Google Analytics on a 503 page 【发布时间】:2012-07-15 09:01:52 【问题描述】:

我正在使用 varnish 来缓存我们的页面。当我们得到一个 503 时——这种情况发生得太频繁了——我想在那里进行某种页面跟踪。我想把GA代码放在那里。我似乎找不到任何其他人这样做的例子。有人做过吗?这样做是否违反了某种条款和条件?

【问题讨论】:

当你得到一个 503 页面时,用户会被重定向到不同的页面还是看到相同的页面? 【参考方案1】:

对于 Varnish,您可以使用 vcl_error 来包含您自己的响应(具有 Google Analytics 代码)。

编辑:我没有测试过这些。它们只是示例。

一个例子:

sub vcl_error 
    set obj.http.Content-Type = "text/html; charset=utf-8";

    if (obj.status == 503) 
        synthetic "
<html>
<head>
<title></title>
</head>
<body>
<h1>Error</h1>
<p>Something</p>
<!-- ANALYTICS CODE -->
</body>
</html>
        ";

        return(deliver);
    

或者,您可以使用vmod(作为标准包含在版本 3.*+ 中)从文件系统添加您自己的页面。

# Add this to the top of your config
import std;

# vcl_error
sub vcl_error 
    set obj.http.Content-Type = "text/html; charset=utf-8";

    if (obj.status == 503) 
        set obj.http.error503 = std.fileread("/path/to/errors/503.html");
        synthetic obj.http.error503;
        return(deliver);
    

【讨论】:

你可以只做 "synthetic std.fileread("/path/to/errors/503.html");"而是。

以上是关于在 503 页面上使用 Google Analytics的主要内容,如果未能解决你的问题,请参考以下文章

多语言 Google 翻译 API 正在返回 (503) 服务器不可用

部署 Google App Engine 应用程序时出现 503 错误

设置上的 Varnish 错误 503

使用 JMeter 时出现 503 HTTP 错误,但网页在浏览器上加载正常

YouTube V3 API - Google.Apis.Requests.RequestErrorBackend 错误 [503]

尝试使用 python 访问 Google 专利时出现 503 错误