2009-08-05 20 views
2

我們在FF 3.5中收到警告,警告未加密的內容(部分加密的頁面)。我們從未在FF 3.0中收到任何此類警告。我們正在加載的頁面使用https對HTML頁面進行單個獲取請求,但沒有其他請求會針對CSS,JS和圖片等進行請求。Firefox 3.5警告該頁面包含未經身份驗證的內容

有沒有其他人遇到過FF 3.5的這個問題? 任何疑難解答技術來識別被標記爲未加密的內容?

回答

8

問題實際上是由於lightbox。以下是在燈箱CSS文件中定義:

background-image:url(data:image/gif;base64,AAAA); /*Trick IE into showing hover*/ 

它使用一個圖像編碼內聯(BASE64)。它被稱爲Data URI Scheme

我們很幸運,我們不必支持IE 6或7,所以我們只是刪除了背景圖片,這解決了問題,並且在Firefox中仍然能夠正常使用燈箱。我沒有在IE 8中測試,但由於它是「更多」符合標準,我希望黑客不會被需要。

順便說一句,識別導致問題的內容其實很簡單。頁面信息中的媒體選項卡顯示頁面下載的所有內容。我依靠Firebug來告訴我所有事情,但事實並非如此。媒體部分明確規定了通過HTTPS收到的內容以及不包含哪些內容。

+2

WTF ...數據URI不應該被認爲是不安全的內容,這是一個相當搞砸的行爲! – 246tNt 2009-11-23 17:35:43

+0

媒體選項卡不是加載的URL的完整列表。我收到此錯誤,但媒體標籤僅顯示https網址。 – Cerin 2011-01-18 19:59:41

1

你試過重現了「知道」好頁面的行爲,即:

<html> 
    <title>Test Page</title> 
    <body> 
    <p>This should pass</p> 
    </body> 
</html> 

如果一個網頁,如一個在我的例子顯示出它會指向一個錯誤在FF 3.5的行爲但在向Mozilla提交錯誤報告之前需要驗證它。

我也會確保您的HTTPS證書正確驗證!並且您的Web服務器配置正確! (順便說一下 - 你在用什麼服務器??)

0

我有同樣的問題。這是我建議:

嘗試使用HTTP FOX調用頁面,看看mod重寫是否將圖像從https:...更改爲http:...換句話說,查找任何即將發生的內容HTTP:

https://addons.mozilla.org/en-US/firefox/addon/6647/

如果你看到任何資源來通過http://,這就是問題所在。

添加此規則爲.htaccess(或mod_ssl.conf)解決了這個問題對我來說:

的RewriteCond%{SERVER_PORT}^443 $
的RewriteCond%{REQUEST_URI}^/(結帳! |過程|感謝|服務條款).PHP $
的RewriteCond%{REQUEST_URI}(PNG |!GIF | JPG | CSS | JS |。SWF)$
重寫規則^(*)$ {http://%} HTTP_HOST%{ REQUEST_URI} [L]

相關問題