【发布时间】:2014-11-12 15:43:39
【问题描述】:
我正在使用谷歌标签管理器:
<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-XXXX');
</script>
但是当我使用https:// 调用页面时,它给了我混合内容错误:
1) .... 已通过 HTTPS 加载,但运行来自“http://www.youtube.com/iframe_api”的不安全内容:此内容也应通过 HTTPS 加载。
2) .... 已通过 HTTPS 加载,但运行来自“http://s.ytimg.com/yts/jsbin/www-widgetapi-vflFaZyew/www-widgetapi.js”的不安全内容:此内容也应通过 HTTPS 加载。
我不知道为什么或如何解决这个问题,你能帮忙吗?谢谢。
【问题讨论】:
-
最明显的检查是您是否有(自定义)标签运行在非安全网址上。即使您自己没有将它们放在那里,检查这一点也是值得的,来自显示发布商的基于 javascript 的标签可能包含不安全的内容(不过,在您的情况下,您似乎试图通过标签管理器嵌入 youtube 视频)。
标签: google-tag-manager youtube-iframe-api mixed-content