我正在使用Google Analytics度量协议手动记录RSS Feed的网页浏览量(此处无法使用常用的Google Analytics)。
一切正常,但谷歌分析警告我,我有很多“自我推荐”。警告详情如下:
对财产的转介流量的很大一部分< MY_DOMAIN>来自以下主机名,可能是自我引荐:
< MY_DOMAIN>
自我引荐是指您自己域名中的网页引荐。自我引荐可能会模糊应归因于您网站上的转化和其他互动的实际流量来源。因此,您的推荐指标可能不准确。此外,自我推荐可能表示不正确配置的跨域标记。您的用户可能会为每个域生成一个会话,这会人为地夸大会话计数。
有多种不同的Google Analytics配置错误导致自我推介。从您网站上的未标记页面导航到标记页面的用户可以显示为自我推介。从您网站上的一个子域导航到另一个使用不同Cookie域的子域的用户可以显示为自我推荐。如果您在一个网络媒体资源中跟踪多个网域,那么在您网站上的多个网域中导航而没有设置正确传输Cookie信息的链接器参数的用户可能会显示为自我引荐。
为避免自我引荐,请确保使用Google Analytics跟踪代码正确标记您网站上的所有网页,确保在所有网页上正确配置跨域跟踪,并在跟踪代码中检查您的Cookie域设置确保域中的所有子域都使用相同的cookie域。
果然,我从我自己的域中获得了大约99%(几乎所有关于RSS提要的点击) - 这绝对不是这种情况,因为这些点击通常直接来自RSS阅读器。 / p>
在我的C#代码中,我使用HTTP分析Google Analytics,我使用Request.UrlReferrer
获取当前请求的引荐来源并将其发布到Google Analytics:
// context is an instance of HttpContext
var client = new HttpClient
{
BaseAddress = new Uri("http://www.google-analytics.com")
};
[...]
string referrer = null;
if (context.Request.UrlReferrer != null)
{
referrer = context.Request.UrlReferrer.ToString();
}
var postContent = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("v", "1"),
new KeyValuePair<string, string>("tid", Config.GoogleAnalyticsTrackingId),
new KeyValuePair<string, string>("cid", clientId),
new KeyValuePair<string, string>("t", "pageview"),
new KeyValuePair<string, string>("dh", context.Request.Url?.Host),
new KeyValuePair<string, string>("dp", context.Request.Url?.PathAndQuery),
new KeyValuePair<string, string>("ua", context.Request.UserAgent),
new KeyValuePair<string, string>("uip", context.Request.UserHostAddress),
new KeyValuePair<string, string>("dr", referrer)
});
client.PostAsync("collect", postContent).Wait();
我看不出为什么我会在自己的域名中获得这么多推荐的原因。我知道Request.UrlReferrer
可以为null,但这应该不是问题,是吗?我该怎么做才能解决这个“太多的自我推荐”问题?我可以检查我自己域名的引荐来源,然后不要将此引荐来源发送到Google Analytics,但这对我来说似乎不太聪明;)