URLRewriter переписывает все запросы, даже для изображений - PullRequest
0 голосов
/ 18 ноября 2011

Я использую URLRewriter , но есть проблема, он перезаписывает все адреса, даже для URL изображений, например, показывает веб-страницу для http://localhost/images/logo.png.

Это мой web.config

<?xml version="1.0"?>

<configuration>

    <configSections>
      <section name="rewriter"
               requirePermission="false"
               type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
    </configSections>

    <system.web>
        <compilation debug="true" targetFramework="4.0" />

      <httpModules>
        <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" />
      </httpModules>

    </system.web>

  <system.webServer>

    <modules runAllManagedModulesForAllRequests="true">
      <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule" />
    </modules>

    <validation validateIntegratedModeConfiguration="false" />

  </system.webServer>

  <rewriter>
    <rewrite url="~/pages/(.+)" to="~/default.aspx?pn=$1" />
  </rewriter>

</configuration>

Я хочу перезаписать только файлы .aspx.

1 Ответ

0 голосов
/ 18 ноября 2011

Атрибут url в элементе rewrite является регулярным выражением .Net , в данный момент имеющееся у вас выражение соответствует чему-либо в ~ / pages /. Если вы хотите сопоставлять только файлы .aspx, самое простое - изменить это на

<rewrite url="~/pages/(.+\.aspx)" to="~/default.aspx?pn=$1" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...