Cookies iFrames+;谷歌分析+;饼干+;P3P

Cookies iFrames+;谷歌分析+;饼干+;P3P,cookies,google-analytics,iframe,p3p,Cookies,Google Analytics,Iframe,P3p,我在一个网站上工作,为合作伙伴网站产生流量。当在我们的网站上单击合作伙伴网站的徽标时,我们会在一个页面中打开合作伙伴网站,该页面包含我们的基本标题和iframe中的合作伙伴网站。早些时候,我们只是在新窗口中打开合作伙伴站点。到目前为止都很酷 大多数合作伙伴网站使用google analytics跟踪我们发送给他们的流量,在我们开始在iframe中打开网站后不久,我们的合作伙伴报告说google analytics不再跟踪数据(或者只跟踪一小部分数据) 我在googleverse上做了相当多的家庭

我在一个网站上工作,为合作伙伴网站产生流量。当在我们的网站上单击合作伙伴网站的徽标时,我们会在一个页面中打开合作伙伴网站,该页面包含我们的基本标题和iframe中的合作伙伴网站。早些时候,我们只是在新窗口中打开合作伙伴站点。到目前为止都很酷

大多数合作伙伴网站使用google analytics跟踪我们发送给他们的流量,在我们开始在iframe中打开网站后不久,我们的合作伙伴报告说google analytics不再跟踪数据(或者只跟踪一小部分数据)

我在googleverse上做了相当多的家庭作业/研究,发现了google分析或Cookie在域和iFrame中普遍存在的已知问题

我正在尝试解决这个问题,唯一被引用的解决方案是使用P3P头

  • 首先,P3P头文件放在哪里?在“我的网站”页面或“合作伙伴网站”页面中。由于我们有许多合作伙伴站点(大的和小的),如果解决方案是在每个站点上都放置标签,那将是不现实的。我可以很容易地将它们添加到包含iframe的页面中

  • 在各种p3p标头生成器中,是否有您推荐的可靠生成器

  • 有办法解决这个问题吗?我真的需要在iframes中打开站点,显然合作伙伴站点真的需要跟踪流量


  • 谢谢你的帮助

    不幸的是,您和合作伙伴站点都需要设置标题

    备选方案:

    • 如果您不希望合作伙伴站点设置标题,一个选项是在浏览器设置中降低安全级别(在IE中)或授予对第三方cookie的访问权限(在FF中)。每个客户都必须这样做,因此这可能不是一个有吸引力的解决方案
    • 使用(HTML5 thingy-支持
      localStorage
      的浏览器允许访问站点和存储在localStorage中的iFrame内容)。这在短期内可能不可行,因为它要求您和您的合作伙伴站点实现向
      localStorage
      保存/读取信息,并且并非所有浏览器都支持它(尤其是较旧的IE浏览器)
    添加基本策略标题(理想情况下,您应该直接生成自己的策略-检查下面的第2项)

    在php中添加以下行:

    <?php header('P3P: CP="CAO PSA OUR"'); ?>
    
    在HTML页面中:


    希望有帮助

    @eduardocereto:又添加了一些代码示例。回答得好。我注意到CP=“CAO PSA OUR”通常足以绕过cookie限制。除了遵守没有人关心的规范之外,还有什么理由创建完整的P3P文件吗?创建完整的P3P文件的原因是您关心它!:)IE 10是否仍然粘附在P3P元标记上?IE 8是该公司的默认浏览器,我正试图让Google Analytics在iFrame中运行,当然IE是有问题的。因为P3P在很大程度上是微软的idea,而IE是唯一支持它的主要浏览器,我不会这么想。而且,根据他们的观点,他们确实如此。
    HttpContext.Current.Response.AddHeader("p3p", "CP=\"CAO PSA OUR\"");
    
    <meta http-equiv="P3P" content='CP="CAO PSA OUR"'>
    
    Header append P3P "CP=\"CAO PSA OUR\""