Iis

IIS 8.5 URL 重寫不起作用:規則根本沒有影響

  • September 2, 2020

我正在嘗試使用 Rewrite 模組在 IIS 8.5 中設置 http 到 https 重寫。絕對沒有我嘗試過的任何影響。URL 的格式為:http://users-dev.somedomain.com。目前在 web.config 中創建的規則是:

<rewrite>
 <rules>
   <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}" />
   </rule>
 </rules>
</rewrite>

從那以後我嘗試了很多變化。早些時候修改 URL 重寫我可以看到各種規則生效,但現在似乎我所做的任何事情都沒有任何影響……我懷疑 IIS 出了問題。我也試過重啟IIS,但無濟於事…

有任何想法嗎?

事實證明,在站點 SSL 設置下,選中了“需要 SSL”複選框。如果選中此項,則客戶端根本無法通過埠 80,並且永遠不會發生重寫…

如果您使用的是重寫模組,則無法選中“需要 SSL”,因為初始請求需要能夠通過埠 80。

好吧,我以為我在 IIS 8.5 上遇到了與 MrLane 相同的情況。

我花了一天的時間才發現我沒有在 80 埠上執行網站。

我只是添加了這個綁定(埠 80),並且規則按預期工作。

希望這可以幫助解決 MrLane 的案子。

引用自:https://serverfault.com/questions/709837