我在 Windows Server 2012 R2 上安裝了 IIS 8
按照
嘗試了
但只要在 web.config 我指定
<match url="(.*)" />
并轉到
當設定<match url=""(.*)"" />沒有錯誤并且 http 到 https 不起作用時。
uj5u.com熱心網友回復:
能否https://XXX/ws/Services.asmx成功訪問服務鏈接?好像重定向到HTTPS后,就無法訪??問了。請嘗試將AllowAutoRedirect屬性設定為true.
如果還是不行,還可以試試以下方法:
IIS 反向代理和 URL 重寫共同實作 https 重定向。
您需要在 Web 平臺安裝程式上安裝 ARR 模塊。安裝完成后可以在服務節點看到Application Request Routing Cache模塊,雙擊打開,選擇Server Proxy Settings,勾選Enable proxy,內容不需要修改,當然你可以根據自己的需要進行修改。單擊應用完成請求路由設定。最后在站點中設定重寫規則:

你可以參考我的一些建議,嘗試解決這個問題。
uj5u.com熱心網友回復:
找到了答案,不需要安裝Applicarion請求路由,只需要修改URL重寫規則:
<rule name="Http to HTTPS" enabled="false" stopProcessing="true">
<match url="(.*)" negate="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Found" />
</rule>
網站依賴于 web 服務,并被配置為在 http:// 上與它通信(/ws/Services.asmx url),因此當網站使用 http:// 呼叫 web 服務時,請求被 https 捕獲向其發送重定向回應標頭(301 找到訊息)的重定向規則。因此,最初的 POST 呼叫得到了 301 回應,將其重定向到 https:// url,這不是網站所期望的,因此 web 服務呼叫(POST)基本上丟失了,就好像 web 服務無法訪問導致錯誤訊息出現。
Web 服務的 URL 可在 web.config 檔案中配置,因此網站現在直接使用 https:// 呼叫 Web 服務,不需要 ARR
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/464791.html
