Я пытаюсь настроить переписать правило в IIS7, чтобы скрыть расширения страницы (.aspx), но также и поле и передать querystring параметры странице.
Например, если исходный URL:
www.mysite.com/page.aspx?pid=a
как я могу заставить это переписывать к
www.mysite.com/page
но все еще передайте значение querystring странице?
Если вы помещаете его в web.config, вы ищете appendQueryString
<rule name="MyRule" stopProcessing="true">
<match url="{your regex}" ignoreCase="false" />
<action type="Rewrite" url="{your rewrite}" appendQueryString="true" />
</rule>
Если вы делаете это в IIS Manager, установите флажок "Append query string".
Вы можете проверить это: http://learn.iis.net/page.aspx/465/url-rewrite-module-configuration-reference/#Rules_Evaluation
Но, согласно этой статье, в Rewrite Action есть параметр appendQueryString, который определяет, добавляется ли строка запроса к новому URL-адресу. Это должно быть включено по умолчанию (опять же, согласно той статье), поэтому вам не нужно ничего делать.