【发布时间】:2020-02-13 22:42:03
【问题描述】:
我打算在我的网站上放置谷歌分析跟踪代码,但我不知道如何让它响应那些发送“请勿跟踪”信号的人。 如何让 GA 跟踪代码跟踪没有 DNT 信号的人,同时保护有它的人?
【问题讨论】:
标签: javascript security google-analytics privacy
我打算在我的网站上放置谷歌分析跟踪代码,但我不知道如何让它响应那些发送“请勿跟踪”信号的人。 如何让 GA 跟踪代码跟踪没有 DNT 信号的人,同时保护有它的人?
【问题讨论】:
标签: javascript security google-analytics privacy
您无法在 GA 仪表板中响应此请求,但是,您可以按条件激活分析脚本:
<script>
let dnt = navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack;
if (dnt != "1" && dnt != "yes") {
// past analytics scripts here
} else {
console.debug("Request to cancel loading analytics scripts (Do-Not-Track).");
}
</script>
【讨论】:
使用以下谷歌分析标签来尊重 DNT 浏览器设置(将 XX-XXXXXX-X 替换为您的 Tracking-ID)。
使用此解决方案,当 dnt 处于活动状态时,不会将任何数据传输到 google。当使用“谷歌方式”和用户退出时,您的页面中仍然包含一个谷歌脚本,他们仍然知道您在这个页面上(即使他们声称不跟踪您)。
<script>
<!-- Global site tag (gtag.js) - Google Analytics respecting DNT -->
if ([true, 1, '1', 'on', 'yes'].indexOf(navigator.doNotTrack || window.doNotTrack || navigator.msDoNotTrack) === -1) {
let gtagId='XX-XXXXXX-X', sc=document.createElement('script');
sc.async=true;
sc.src='https://www.googletagmanager.com/gtag/js?id=' + gtagId;
document.head.appendChild(sc);
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', gtagId);
}
</script>
【讨论】:
我只想跳进去说您在这项工作中使用了错误的工具。如果您想要一个尊重 DNT 的分析平台,那么您将需要使用 Google Analytics 以外的其他工具。没有很多对隐私友好的分析 - 这实际上是导致我们创建 Insights 的原因。以下工具注重隐私,据我所知,尊重 DNT 请求:
Insights:跟踪事件、页面浏览量等。尊重 DNT 请求。
SimpleAnalytics:跟踪页面浏览量。尊重 DNT 请求。
Matomo:可能是最完整的隐私友好型分析工具。它可以配置为尊重 DNT 请求。自托管。
【讨论】:
dnt 字段(stackoverflow.com/questions/67540315/…)的类似问题。我检查了您的网站 (getinsights.io),但在响应标头中没有看到 tk。如何验证您的服务器是否符合我的dnt-enabled 请求?此外,您上面提到的三个服务似乎都没有在其响应标头中实现tk。
我不知道在 GA 的配置中是否对 DNT 有任何特别的支持,但无论如何它都是学术性的,因为加载 GA 脚本的简单行为会传输谷歌跟踪所需的所有内容 - IP、浏览器指纹、引荐来源网址、 cookie — 真的不能相信谷歌不会使用这些信息,当它像这样掉到他们的腿上时。
解决此问题的唯一方法是自己先发制人地对其进行过滤 - 如果在浏览器中设置了 DNT,则甚至不要加载 GA 脚本。
请注意,过去几个月欧洲的案例(搜索“Planet49”)重申,分析 cookie(尤其是第三方 cookie)不被视为“必要”,因此需要征得您的同意才能使用加载脚本或让它设置任何 cookie。
避免所有这些大惊小怪的方法当然是自行托管您自己的分析(例如使用 Matomo 或类似工具),并且不要像 GA 那样不必要地使用 cookie。
【讨论】:
【讨论】: