[英]IIS rewrite module 301 redirects remove folder adding extra slash
我有這個IIS重寫規則
<rule name="Redirect rule for aliased Pages">
<match url="^/pages/(.*)" />
<action type="Redirect" url="{R:1}" />
</rule>
這個想法是它應該將http://mydomain.com/pages/about-us/重定向到http://mydomain.com/about-us/ 。 根據IIS中的測試人員的說法,R:1是about-us /,但是重定向始終轉到http://mydomain.com//about-us/ (請參閱double //)。 我試過從匹配URL中刪除兩個正斜杠,然后單獨保留每個正斜杠,這似乎沒有任何區別。
知道多余的/是從哪里來的嗎?
URL重寫模塊在初始斜杠后開始檢查,因此以下內容將刪除第一級文件夾“頁面”:
<rule name="Redirect rule for aliased Pages">
<match url="^pages/(.*)" />
<action type="Redirect" url="{R:1}" />
</rule>
測試:
如預期的那樣。
請注意,如果重寫規則位於單獨的文件中,則需要回收應用程序池或重新啟動IIS,以使更改生效。
同樣,規則的順序也很重要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.