0

使用从谷歌分析产品生成的这段代码:(信息审查)

<meta name="google-site-verification" content="xxxxxxxxxxxx" />



<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'xxxxxxxx']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 
    'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 
    'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; 
    s.parentNode.insertBefore(ga, s);
  })();

</script>

导致内部 500 错误,代码在 head 标签中

4

3 回答 3

7

如果您的网站使用 Smarty 模板引擎,只需将此代码粘贴到模板中就会导致 500 Internal Server Error,因为模板对代码的解释不正确。

过去的代码

{literal} 
...
{/literal}

块,您的问题将得到解决!

Logicia.co.uk 博客大喊大叫,它帮助我解决了同样的问题。

于 2013-12-10T18:22:31.517 回答
0

您是否尝试过在元素结束之前将脚本标签移动到内容的底部?

IE:

<body>
  stuff here
  <ga script include>
</body>

脚本本身正在将另一个脚本标签附加并加载到头顶。因此,您可能会在 GA 附加和加载新脚本与其他 JS 编译之间发生冲突。

于 2012-11-09T16:48:45.920 回答
-1

WAG(Wild-A **-Guess)*,基于您对头部中许多其他 SEO 内容和脚本的评论...

将分析代码分成两部分。将加载的部分放在ga.js靠近头顶的任何其他脚本调用之上。

<script type="text/javascript">
  (function() {
    var ga = document.createElement('script'); ga.type = 
    'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 
    'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; 
    s.parentNode.insertBefore(ga, s);
  })();
</script>

将执行分析的另一部分放在 head 标签的底部,甚至放在 body 标签的底部。

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'xxxxxxxx']);
  _gaq.push(['_trackPageview']);
</script>

如果您仍然遇到问题,请查看如果您_gaq完全删除代码会发生什么

  • 如果您仍然收到 500 个错误,那么问题出在ga.js. 您可以尝试切换到旧的、非异步风格的 Google Analytics。
  • 如果错误消失,那么问题在于分析跟踪像素请求......
于 2012-11-09T17:24:44.693 回答