Intelligencia UrlRewriter.NET не работает должным образом на IIS 6?

У меня проблема с работой следующего синтаксиса:

<rewriter>
    <!-- This does NOTHING -->
    <if url="whywontthiswork\.aspx" rewrite="/default.aspx" />

    <!-- This redirects correctly -->
    <redirect url="whywontthiswork\.aspx" to="/default.aspx" />
</rewriter>

Как уже отмечалось, первое правило ничего не делает, что бы я ни пытался. Поле X-Powered-By в ответе на этот запрос страницы всегда говорит «ASP.NET». Однако второе правило перезаписи работает всегда, а поле X-Powered-By в ответе на этот запрос — «ASP.NET, UrlRewriter.NET 2.0».

Я считаю, что IIS настроен правильно, потому что он правильно обрабатывает запрос для <redirect />. Проблема в том, что у меня нет никаких идей, почему первое правило перезаписи не будет выполняться.

Я попытался найти документацию на UrlRewriter.NET, но на данный момент кажется, что их сайт отключен или нет. дольше в эксплуатации. Любые идеи?


person Kevin    schedule 08.12.2009    source источник


Ответы (1)


ОК, извините, что отвечаю на мой собственный вопрос, но я нашел решение вскоре после публикации этого. У меня, скорее всего, другая версия UrlRewriter.NET, чем та, которая использовалась при создании этих правил. Обновление синтаксиса до следующего решило проблему:

<if url="whywontthiswork\.aspx">
    <rewrite url="whywontthiswork\.aspx" to="/default.aspx" />
</if>

Редактировать:
Я смог подтвердить, что наша производственная среда использует Intelligencia.UrlRewriter версии 1.7.0, но я использовал сборку 2.0.

person Kevin    schedule 08.12.2009