Javascript 如何在Google标签管理器中强制使用SSL

Javascript 如何在Google标签管理器中强制使用SSL,javascript,ssl,google-tag-manager,Javascript,Ssl,Google Tag Manager,有人能告诉我如何在Google标签管理器中强制使用SSL吗?谷歌有关于谷歌分析的文档。但我似乎找不到一个标签管理器。另外,它看起来也没有访问ga对象的权限,因此我无法设置该配置。我不知道任何正式答案,但如果您将标记管理器代码的无协议URL更改为始终使用ssl,它应该可以工作: <!-- Google Tag Manager --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=G

有人能告诉我如何在Google标签管理器中强制使用SSL吗?谷歌有关于谷歌分析的文档。但我似乎找不到一个标签管理器。另外,它看起来也没有访问
ga
对象的权限,因此我无法设置该配置。

我不知道任何正式答案,但如果您将标记管理器代码的无协议URL更改为始终使用ssl,它应该可以工作:

<!-- Google Tag Manager -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXX"
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=
'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 -->

(函数(w,d,s,l,i){w[l]=w[l]||【】;w[l]。推送({'gtm.start':
new Date().getTime(),事件:'gtm.js'});var f=d.getElementsByTagName[0],
j=d.createElement,dl=l!=“数据层”?“&l=”+l:“”;j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(窗口、文档、“脚本”、“数据层”、“GTM-XXXX”);
请参见第一行和第六行中分别对iframe源属性和js注入源属性的更改,以包括协议。这不是可以通过GTM接口进行的更改(因为在设置生效之前必须加载代码)


更新:我误解了这个问题(真正的问题是如何将Google Analytics标签内部的tag manager强制为SSL)。这可以通过两种方式完成,一种是通过“设置字段”(forceSSL als字段名和true作为值),另一种是通过在“高级配置”选项卡中选中“始终使用SSL”。

我不知道任何正式答案,但如果您将标记管理器代码的无协议URL更改为始终使用SSL,则应该可以:

<!-- Google Tag Manager -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXX"
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=
'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 -->

(函数(w,d,s,l,i){w[l]=w[l]||【】;w[l]。推送({'gtm.start':
new Date().getTime(),事件:'gtm.js'});var f=d.getElementsByTagName[0],
j=d.createElement,dl=l!=“数据层”?“&l=”+l:“”;j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(窗口、文档、“脚本”、“数据层”、“GTM-XXXX”);
请参见第一行和第六行中分别对iframe源属性和js注入源属性的更改,以包括协议。这不是可以通过GTM接口进行的更改(因为在设置生效之前必须加载代码)


更新:我误解了这个问题(真正的问题是如何将Google Analytics标签内部的tag manager强制为SSL)。这可以通过两种方式完成,一种是通过“设置字段”(字段名和值为true),另一种是通过在“高级配置”选项卡中选中“始终使用SSL”。

最后尝试了这一点。是的,获取gtm.js的初始请求现在是通过HTTPS。但是,每个单独的事件日志仍然是通过HTTP记录的。对不起,误解了您在哪里寻找的内容。在标签管理器中,转到您的分析标签,展开“更多设置”,搜索“要设置的字段”,并输入forceSSL作为字段名,true作为值。最后尝试了此操作。是的,获取gtm.js的初始请求现在是通过HTTPS。但是,每个单独的事件日志仍然是通过HTTP记录的。对不起,误解了您在哪里寻找的内容。在标签管理器中,转到分析标签,展开“更多设置”,搜索“要设置的字段”,并输入forceSSL作为字段名,true作为值。