2011-06-25 115 views
1

如果我訪問我的網站(使用代碼點火器)的主頁,我的主頁正在使用http, 代碼點火器設置一個包含所有會話信息的cookie。Cookie在Chrome瀏覽器中導致「不安全內容」警告?

如果我然後點擊登錄,這是使用https我得到不安全的內容警告,我唯一能想到的就是餅乾,因爲如果我重新啓動瀏覽器,然後直接去https://mysite.com/login然後我沒有得到不安全的內容警告。

我該如何解決這個問題(請注意,主頁不能是https)。

+0

你有一個有效的https嗎?你買了嗎?或者您只是將https添加到您的域名?點擊導航欄中的https,您將獲得更多信息 – Tarek

回答

2

這個錯誤來自於通過http服務的內容到應該是https的頁面。例如,<img><link><script>

Codeigniter的事情很可能是您使用base_url()site_url()來獲取嵌入內容的完全絕對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. 在控制器的__construct(),你需要使用https(或者在需要它的方法),加載重新定義自己的基本網址使用https不同的配置文件。請注意,在加載此配置文件之前,任何使用基本url輸出html的腳本/庫都爲時已晚。

如果加載在IE瀏覽器的頁面,你應該得到一個非常惱人的錯誤信息,這將使你的所有的一切不安全傳輸的內容列表來幫助您解決(其他瀏覽器應該有這個功能,以及,但在IE中尤其突出)。

編輯:看到您的筆記,通過http請求的頁面上沒有任何內容,只有https,以及關於沒有cookie時會發生什麼的註釋。我的錯誤,我只是醒了 - 我應該更徹底地閱讀這個問題:p

0

您正在安全(https)登錄頁面上加載不安全的內容(通常爲images/iframe)。

這意味着你正在引用一個鏈接到一個不安全的頁面(不是https)。這會導致錯誤,並提示用戶是否加載這些內容。這是與外部內容鏈接的問題,而不是您的Cookie。

編輯:要(暫時)修復問題,找到對外部內容的任何鏈接/引用並暫時禁用它,然後訪問您的頁面,並且提示/錯誤應該消失。

要解決此問題,您必須下載內容或使用您網站上的文件安全下載該網頁的內容以供使用。

+0

通過http請求的頁面上沒有任何內容,只有https, – Hailwood

+0

您在Cookie中存儲了哪些類型的信息? –

+0

它的代碼點火器,所以它存儲各種東西... – Hailwood

相關問題