谷歌标签管理器的404错误

147

谷歌标签管理器告诉我要将这个标签放在开头的 body 标签下面。

<!-- Google Tag Manager -->
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-XXXXXX"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<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=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXXX');</script>
<!-- End Google Tag Manager -->

现在我收到了这个 GET 请求的 404 Not Found 错误:

GET http://www.googletagmanager.com/gtm.js?id=GTM-XXXXXX

我昨晚实现了这个代码。这只是需要时间还是需要修复?如果是后者,我该如何修复?


33
你是否至少发布过你的容器的第一个版本? - Sundrique
@Sundrique 我不确定。我该如何检查? - J82
14
前往容器->概览,点击右上角蓝色的“发布”按钮,然后在弹出窗口中点击“创建版本并发布”。 - Sundrique
9个回答

261
您需要发布容器的版本。如果未发布,则请求将返回404错误。

要发布当前工作区:

  1. 单击屏幕右上方的提交。将显示提交更改屏幕,其中包含发布容器和保存容器版本的选项。
  2. 如果尚未选择,请选择发布并创建版本
  3. 查看工作区更改部分,以查看您的配置是否符合预期。
  4. 输入版本名称版本描述
  5. 如果已配置标签管理器以使用多个环境,请使用发布到环境部分选择要发布到哪个环境。
  6. 单击发布

2
请注意,即使您是管理员,如果您的用户在容器上没有“发布”权限,则可能看不到发布选项。 - StuartQ
在工作区进行更改后,您需要返回到您的环境并将每个环境发布到相应的版本。 - mbunch
感谢您提供解决方案。 - anant prajapati
这是正确的解决方案,但对于已经发布容器的用户,404错误的原因是预览模式已过期。您可以通过禁用预览模式来解决此问题。因此,404错误有两个原因:
  1. 未发布的容器
  2. GTM中已过期的预览模式。请查看https://analyticshelp.io/blog/fix-google-tag-manager-not-loading-404-error/以获取更多详细信息。
- unixdebian11
截至2021年6月,新的GTM容器会自动创建一个已发布(空)版本以避免这个问题。显然,您仍然需要再次发布才能看到您所做的任何更改。 - Eike Pierstorff

10

1
没想到这会是解决办法,但正是我所需要的! - adamduren
这解决了404错误,但随后“预览和调试”模式不起作用。 我恢复了www.子域名,奇怪的是一切都正常工作。 也许我们只需要等待更改传播... - Benoit Blanchon
有趣的是,我也遇到了同样的情况。肯定是基于地区的,因为我在英国的同事没有受到影响。你认为删除GTM代码片段中的“www.”部分是否安全? - Vojta Hejda
1
@VojtaHejda不能保证,但我已经使用它2.5年了,没有遇到任何问题,甚至没有加www。 - Kareem

9

我的问题是启用了广告拦截器。


1
在我的情况下,当我退出预览并再次启动时有所帮助。 我发现我的预览有些“过时”。

0

一旦您在Google标签管理器上进行了任何更改,请确保发布它。如果您没有发布Google标签管理器上的更改,则会出现此问题。


0
截至本文撰写时,您无需发布容器即可修复首次创建容器时的404错误。您只需进行预览即可消除404错误。

0

GTM在尝试加载未启用调试的容器时可能会返回404错误。可以通过在管理>环境>操作>编辑设置>环境配置下勾选默认启用调试复选框来启用调试。这在我的情况下解决了问题。


0

分享一下我遇到的一个相似问题。

我注意到GTM中的optimize.js脚本在控制台上出现404错误,GA停止跟踪访问了一段时间。optimize.js是来自Google的标签,但没有明显的原因,它停止了跟踪。而且,它是GA标签运行的依赖标签。 enter image description here

在我禁用optimize.js标签并将其从GA标签的依赖标签中删除后,GA开始重新跟踪,并且我不再在GTM上收到404错误。

希望这些信息能有所帮助。

谢谢!


-1

创建容器后,必须发布它。容器是否为空并不重要,只需发布即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接