#asp.net #regex #asp.net-mvc-3 #url-rewriting #iis-7.5
#asp.net #регулярное выражение #asp.net-mvc-3 #перезапись URL-адреса #iis-7.5
Вопрос:
Я пытаюсь сопоставить этот старый URL-адрес веб-формы
http://www.mysite.com/Listing.aspx?mlsnum=T5017910
на этот новый URL-адрес MVC:
http://www.mysite.com/listing?id=T5017910
Почему-то я не могу заставить это работать. Мое правило заключается в следующем:
<rule name="My Listing Redirect Rule" stopProcessing="true">
<match url="^Listing.aspx?mlsnum=([0-9a-z] )" ignoreCase="true" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Redirect" url="listing?id={R:1}" redirectType="Permanent" />
</rule>
Приветствуется любая помощь.
Ответ №1:
Вам <match url=...>
нужно экранировать ?
символ, попробуйте это вместо:
<match url="Listing.aspx?mlsnum=([0-9a-z] )" ignoreCase="true"/>
Комментарии:
1. Я попробовал ваше предложение, но я все еще не могу заставить его работать.