Google Tag Manager (gtm) 脚本被 CSP 阻止

您好!

我很难弄清楚为什么我们的 GTM 脚本被 CSP 阻止了:

这是脚本:

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXX');</script>
<!-- End Google Tag Manager -->

我正在遵循此处的说明将 GTM 添加到 discourse。我已经按照文章中的说明删除了 GA ID,并将 https://www.googletagmanager.com 添加到了我们的允许列表中。

有什么想法吗?

1 个赞

你看到这个话题了吗?

3 个赞

@Lilly!我没看到那个特定的话题,但我确实遵循了它链接到的文档。我已经将 https://www.googletagmanager.com 添加到白名单了 :thinking:

2 个赞

你好 Ty,

看起来你目前有几个脚本被阻止了,你可能需要将它们添加到你的 CSP 中:

我还看到你在控制台中遇到了一个 nonce 错误。你尝试过 配置 GTM 来处理这些错误 吗?

最后,我会尝试将 https://*.googletagmanager.com 添加到你的允许列表中。

4 个赞

非常感谢您在此提供帮助,@MarkDoerr

我需要联系负责这些脚本的团队,并提及 nonce 处理,感谢您指出这些问题!

奇怪的是,在 Brave 和 Safari 中,无论是否允许 https://www.googletagmanager.comhttps://*.googletagmanager.com,GTM 脚本本身都没有 CSP 相关错误,只有 Chrome 和 Firefox 有。

2 个赞