2010-08-25 52 views
2

我在example.com上有一個網站,它加載了s.example.com(亞馬遜雲計算髮行版)中的所有靜態組件。網站不同部分的不同SSL證書

現在我想使example.com的某些頁面使用https,所以我想我會爲example.com購買一個ssl證書,但由於頁面從s.example.com加載圖像和其他內容,由於某些組件未加密,因此https會中斷。

是否有可能爲s.example.com購買第二張證書?我問的原因是因爲購買兩個單域證書比購買通配證書要便宜得多。

回答

0

只要頁面內的所有組件都是http或全部https,就應該能夠使用不同的https:// 運行頁面,瀏覽器不會收到警報。

<img src="https://example.com/a.jpg"/> 
<img src="https://s.example.com/b.jpg"/> 

您必須保持各種證書保持最新狀態。

1

各種(子)域的各種證書的問題是,您必須擁有專用於域的IP。這是由於SSL設計 - 首先建立了SSL連接,此時驗證了證書。服務器在此時不知道要提供哪個證書。只有握手成功後纔會發送帶域名的HTTP請求。

所以你必須購買通配符證書,如果你想覆蓋這兩個域,他們都坐在相同的IP地址。

2

這取決於兩臺主機是否運行在同一臺服務器和IP地址上(使用虛擬主機)。

簡單的方法是能夠在兩個不同的IP地址(可能是同一臺機器)上託管example.coms.example.com,在這種情況下,您可以爲每個IP地址配置不同的證書。

如果您不得不爲這兩個名稱使用單個IP地址(和端口),如果您要使用兩個不同的證書,則需要使用Server Name Indication (SNI)擴展名,這是相對較新的(可能不會得到所有瀏覽器的支持,但它似乎與最近的一起工作)。

如果你不能使用SNI,你需要同一個證書同時對example.coms.example.com有效,這可以通過將兩個DNS條目放在主題備用名稱擴展中來實現,或者如果兩個主機的模式適合,也許使用通配符。這兩個選項可能比兩個不同的證書(商業CA)更昂貴。

之後,它是使用https://鏈接鏈接到頁面內容(img ...)的問題,因爲@ ring0已經說過了。