【问题标题】:Difference between //www.google-analytics.com/analytics.js and https://www.google-analytics.com/analytics.js [duplicate]//www.google-analytics.com/analytics.js 和 https://www.google-analytics.com/analytics.js 之间的区别 [重复]
【发布时间】:2018-03-25 00:27:22
【问题描述】:

我正在阅读https://developers.google.com/analytics/devguides/collection/analyticsjs/,这是他们提供的 JavaScript 跟踪 sn-p:

<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
m=s.getElementsByTagName(o)
[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-
analytics.com/analytics.js','ga');

ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');
</script>
<!-- End Google Analytics -->

在我的一个实现中,我的代码唯一不同的是,我使用的是//www.google-analytics.com/analytics.js,而不是https://www.google-analytics.com/analytics.js,但一切正常。在开头包含https: 是否重要。使用一种形式或另一种形式有什么区别?谢谢。

【问题讨论】:

  • 使用src="//example.com"指示浏览器匹配协议,称为“协议相对url”。另请参阅stackoverflow.com/questions/28446314
  • 而 在这种特殊情况下的区别在于,如果您的网站不是通过 https 提供的,则浏览器需要遵循重定向(因为 google 重定向到 https 版本)。

标签: javascript google-analytics


【解决方案1】:

这是一个“协议相对 url”。你可以read about them here,但此时你真的应该只使用https。

这是链接资源的一个很好的摘录:

现在 SSL 鼓励所有人使用,但没有性能 担心,这种技术现在是一种反模式。如果您需要的资产 在 SSL 上可用,然后始终使用 https:// 资产。

允许 sn-p 通过 HTTP 请求为攻击打开了大门 就像最近的 Github Man-on-the-side 攻击一样。总是安全的 即使您的网站在 HTTP 上,也请求 HTTPS 资产,但反过来 不是真的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-08
    • 2014-06-10
    • 2012-03-26
    • 2018-01-12
    • 2019-07-02
    • 1970-01-01
    • 2016-11-25
    • 2018-07-29
    相关资源
    最近更新 更多