У меня настроены следующие правила перезаписи URL:
<rules>
<rule name="Clean URL" stopProcessing="true">
<match url="^([A-Za-z0-9]+)([\?A-Za-z0-9#=&]+)?$" />
<action type="Rewrite" url="{R:1}.aspx{R:2}" />
</rule>
<rule name="CleanTest" stopProcessing="true">
<match url="^([a-z0-9/]+).aspx([a-zA-Z0-9\?#=&]+)?$" />
<action type="Redirect" url="{R:1}{R:2}" />
</rule>
</rules>
То, что это делает, показывает чистый (не .aspx) URL в адресной строке клиента и дополнительно перенаправляет каждый чистый вызов URL на соответствующую .aspx-страницу. Это "вообще" работает нормально. Однако, когда мой URL-адрес содержит хэш-тег, то есть Administration.aspx#first
хэш-тег отсутствует после перенаправления только в IE, он отлично работает в FF / Chrome, что может вызвать это?
Результат после нажатия на ссылку в Chrome / FF:
Administration#first
Результат в IE (9):
Administration
Добавление: отлично работает для GET-параметров.
Ссылка: Login.aspx?logout=1
IE: Login?logout=1
FF / Chrome: Login?logout=1