cookie导致“;不安全内容”;谷歌chrome上的警告


cookies causing "unsecure content" warnings on google chrome?

如果我访问我的网站上的主页(使用代码点火器),我的主页使用http,代码点火器设置一个包含所有会话信息的cookie。

如果我点击登录,即使用https,我会收到不安全的内容警告,我唯一能想到的就是cookie。如果我重新启动浏览器,然后直接转到https://mysite.com/login那么我不会收到不安全的内容警告。

如何修复此问题(请注意,主页不能是https)。

此错误来自通过http向本应为https的页面提供的内容。例如,<img><link><script>

Codeigniter的问题是,对于嵌入内容的完全绝对URL,很可能使用base_url()site_url(),可能使用http。

以下是您可以做的一些事情:

  1. 使用相对URL,即<img src="/path/to/images.jpg">

  2. 不要指定协议。示例://example.com/path/to/image.jpg有关此技术的更多信息,请点击此处:http://paulirish.com/2010/the-protocol-relative-url/

  3. 在需要使用https的控制器的__construct()中(或在需要它的方法中),加载一个不同的配置文件,该文件重新定义您的基本url以使用https。请注意,在加载此配置文件之前,任何使用html输出的基本url的脚本/库都为时已晚。

如果你在IE中加载页面,你会收到一条非常烦人的错误消息,它会给你一个不安全发送的所有内容的列表,以帮助你解决问题(其他浏览器也应该有这个功能,但在IE中它特别突出)。

编辑:看到您的说明,页面上没有任何通过http请求的内容,只有https,以及没有cookie时会发生什么的说明。我的错误,我刚刚醒来——我应该更彻底地阅读这个问题:p

您正在安全(https)登录页面上加载不安全的内容(通常是images/iframe)。

这意味着你引用的链接指向一个不安全的页面(不是https)。这将导致错误,并提示用户是否加载此类内容。这是指向外部内容的链接的问题,而不是您的cookie。

编辑:要(暂时)解决此问题,请找到指向外部内容的任何链接/引用并暂时禁用它,然后访问您的页面,提示/错误应该会消失。

若要解决此问题,您必须下载内容或使用网站上的文件来安全下载供该页面使用的内容。