2012-11-27 27 views
1

我在使用IEMobile 9(WP 7.5)訪問我的網站(在https上)時出現問題。證書工作在IP上但不在URL上

它說它的證書有問題,就好像它無效。一切工作在我測試過的任何其他瀏覽器或平臺(Android(幾個電話和一個銀河選項卡與股票瀏覽器,firefox,歌劇,海豚),iOS(iphone和ipad與safari和鉻),老諾基亞與symbian,Windows 7, Linux和Mac)。

爲了解決這個問題,我在服務器上保存了證書(.cer),並通過手機瀏覽器訪問它。除了通過服務器IP(192.168.xx.xx)訪問它時,它總是抱怨。那時(它說)正確安裝了證書。如果我嘗試訪問仍然使用IP的index.html,所有工作正常,並且不會抱怨證書。但是,如果我嘗試使用實際URL(blah.myblah.com)訪問索引,它會再次抱怨證書,就好像它沒有安裝!

這不是DNS的問題,因爲這是起來,並提供正確的IP,手機正確設置使用它。

證書由* .myblah.com的geotrust/rapidssl簽名。

+0

您是否嘗試清除所有緩存? Cert錯誤真的很糟糕,所以你的瀏覽器可能記住它是一個糟糕的地方。 –

+0

是的,但沒有區別。這發生在一個真實的手機和模擬器上(在win7上) – Stephan

+0

你能準確地告訴我們錯誤是什麼意思嗎?此外,這個問題可能更適合於serverfault。 –

回答

1

這很正常。證書頒發給特定的主機+域名。基本上,SSL的驗證碼將有類似

if (requested host name != certificate issued hostname) { 
    issue security alert 
} 

所以你在做

if (192.168.xx.xx != example.com) { 

,並得到了安全警告。

+0

使用IP我沒有收到安全警告。我在使用URL時獲得該證書,證書頒發給 – Stephan

+0

hm。請檢查geotrust/rapidssl是否位於手機/瀏覽器的內置CA列表中。 –

+0

我做到了這一點(儘管現在我無法再找到鏈接,它在MS網站的某處),GeoTrust在那裏有3個條目。我的證書有一個SHA1密鑰,其中一個是SHA1。其他人是SH256和其他我現在不記得的東西。 – Stephan

0

我遇到了有關證書與某些HTTP over TLS實現如何查找SubjectAltName(SAN)有關的問題。 RFC2818指出,如果主機名是DNS條目,則實現必須根據subjectAltName擴展數組檢查主機名,以查找與主機匹配的DNS條目。如果沒有使用subjectAltName CommonName的情況。 如果主機名是IP,則證書必須包含與IP匹配的subjectAltName IP條目。 另請注意,通配符證書正在被較新的RFC6125阻止,所以MAYBE windows phone已經在強制執行此操作,儘管我可能是錯誤的。

我的第一步是檢查證書的SAN部分,並確保它有一個與您的網站主機匹配的DNS條目。

相關問題