我在我的网页上放了广告并且显示效果很好,但是我在页面加载时在控制台中收到了这个错误:
屏蔽了包含原点" https://googleads.g.doubleclick.net"从访问带有起源的框架" http://fakemail.site"。请求访问的帧具有" https"的协议,被访问的帧具有" http"的协议。协议必须匹配。
通过搜索,我发现这是因为AdSense拥有SSL而我的网站却没有,并且没有任何解决方法 - 但我确信有。任何帮助,将不胜感激。谢谢!
答案 0 :(得分:2)
这是由于javascript同源策略(它是一个安全策略)。您需要添加CORS标头以启用跨源请求,如何执行此操作取决于您使用的服务器。
您可能还需要将您对谷歌广告的通话更改为http而不是https(如果谷歌允许)或更好,省略此类协议//googleads.g.doubleclick.net
这使其默认匹配协议当前页面。
这些错误通常可以安全忽略(谷歌的youtube API也会抛出相同的原始错误并正常运行)但是我不熟悉双击广告。
对于有关CORS和同源策略的更多信息,有一些很好的参考 https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy
PS。确保在测试时禁用所有扩展程序,尤其是广告拦截器 - 只是注意它,因为它是一个常见的错误。