我正在重建一個在線商店,並且該過程的一部分正在編寫301重定向,用於客戶可能已添加書籤的舊鏈接以創建新地址。除了舊地址包含%
字符的地址之外,它們全部工作。它似乎在某種程度上干擾了正則表達式。規則是:導致IIS URL重寫問題的「%」字符正則表達式
<rule name="Custom 41 redirect" stopProcessing="true">
<match url="^c80/How-to-%20Use-Shop-Name\.aspx" ignoreCase="true" />
<action type="Redirect" url="/how-to-use-shop-name" redirectType="Permanent" />
</rule>
測試使用內置的IIS中的正則表達式測試儀告訴我,打
/c80/How-to-%20Use-Shop-Name.aspx
匹配模式但是當我打這個地址時,規則卻沒有重定向。
我還應該強調,我的web.config中有大約400個重寫,但只有3個包含%
字符中斷。
如果你只是使用普通的空間''呢?也許輸入字符串被解釋爲URL解碼的字符串。 –
@stribizhev你是對的,謝謝! –
Grea,我將其添加爲答案。 –