安裝了多個憑證的 SSL 重定向的最佳 IIS 配置

安裝了多個憑證的 SSL 重定向的最佳 IIS 配置

我有一個 IIS7/WinServer2008 配置,安裝了通配符 SSL 憑證 (*.mydomain.com)。 Web 伺服器擁有多個網站,每個網站都配置為透過相同 IP(稱為 IP1)的主機標頭進行路由。有些網站配置為使用 SSL,有些則沒有。

所以我有...

a.mydomain.com -> SSL
b.mydomain.com -> non-SSL
c.mydomain.com -> SSL
d.mydomain.com -> non-SSL
e.mydomain.com -> non-SSL

ETC...

對於上面的範例網站 A 和 C(SSL 網站),我希望將標準 HTTP URL 重新導向到 HTTPS。因此,在 IIS 的根目錄(紅色箭頭),我透過新增自訂狀態代碼 403.4 來配置錯誤頁面設定(請參閱下面的設定)。

新增了客戶 403.4 狀態代碼

編輯設定對話框

編輯功能設定對話框

redirectHttpToHttps.htm 檔案的內容是...

<html>
<head><title>Redirecting...</title></head>
<script language="JavaScript">
function redirectHttpToHttps()
{
    var httpURL= window.location.hostname + window.location.pathname + window.location.search;
    var httpsURL= "https://" + httpURL;
    window.location = httpsURL;
}
redirectHttpToHttps();
</script>
<body>
</body>
</html>

然後,對於 A 和 C 站點,我將舊綁定替換為 SSL 綁定(專門路由到 IP1),並將 SSL 設定設為「需要 SSL」。

所以一切都很好。站點 A 重定向http://a.mydomain.comhttps://a.mydomain.com同樣,站點 C 也做同樣的事情。

現在我有一個非通配符 SSL 憑證可以引入其中。這是針對綁定到 aaa.customerdomain.com 的網站。因此,我將憑證新增至了 IIS 伺服器,並變更了 aaa.customerdomain.com 網站的綁定,以使用新憑證和新 IP2 的 SSL 綁定。

所以現在如果我導航到https://aaa.customerdomain.com,一切都很好。但是,我不知道如何獲得http://aaa.customerdomain.com重定向到 SSL 版本。

有人可以幫助我以正確的方式配置 IIS,以便我可以完成所有這些工作嗎?

答案1

若要處理 IIS 中的各種類型的重定向,請嘗試使用 url 重寫模組

http://www.iis.net/downloads/microsoft/url-rewrite

然後將其新增至每個網站的 Web 配置中,以進行 http 到 https 重定向:

<rule name="Redirect to HTTPS" stopProcessing="true">
  <match url="(.*)" />
    <conditions><add input="{HTTPS}" pattern="^OFF$" />
    </conditions>
  <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>

您也可以透過 IIS url 重寫模組介面使用 GUI 來完成此操作: 在此輸入影像描述 在此輸入影像描述

相關內容