Intelligencia.UrlRewriter не работает в IIS8 или IIS Express 8?

Я установил новую Visual Studio 2013 с обновлением 3 на ОС сервера 2012 R2 (это моя тестовая ОС для программирования и SQL)

но недавно, когда я скомпилировал проект с использованием IIS Express, я столкнулся с ошибкой 404 для моих сопоставленных URL-адресов, которые используют последнюю версию Intelligencia.UrlRewriter. СТРАНИЦА ОШИБОК СОДЕРЖИТ:

Requested URL     http://localhost:2706/technology/Astronomy/2014/9/28/1853.html  
Physical Path      E:\project\technology\Astronomy\2014\9\28\1853.html
Logon Method       Anonymous
Logon User     Anonymous
Request Tracing Directory      C:\Users\Administrator\Documents\IISExpress\TraceLogFiles\Project

Более подробная информация о моих проектах:

.net framework: 4 Управляемый конвейер. Классика (когда я изменил его на Integrated, ничего не произошло!)

мой файл web.config выглядит следующим образом:

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

,,,

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

,,,

 <system.webServer>
    <modules>
      <remove name="UrlRewriter"/>
      <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule,Intelligencia.UrlRewriter" preCondition="managedHandler"/>
      <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="managedHandler"/>
    </modules>

,,,

    <!--Sample-->
 <rewriter>
    <rewrite url="~/up/(.+)/(.+)/(.+)/default.html" to="~/client/default.aspx?u=$1&amp;n=$2&amp;pi=0&amp;ps=5"/>

1 ответ

Решение

Я изменил эту настройку и теперь она работает:

в свойствах проекта я поменял
Мотель с управляемым трубопроводом: классический -> интегрированный

а также
в файле web.config:

 <system.webServer>
        <validation validateIntegratedModeConfiguration="false" />
        <modules runAllManagedModulesForAllRequests="true" >
          <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule,Intelligencia.UrlRewriter" preCondition="managedHandler"/>
          <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" preCondition="managedHandler"/>
        </modules>
Другие вопросы по тегам