2010-07-26 688 views
15

Tengo una aplicación web que ejecuta @ Windows 2008 R2, ASP.NET v4.0.Reescritura de URL en IIS 7.5 causas Error interno del servidor

Instalé el Módulo de reescritura de Url y comencé a usarlo como se muestra en los ejemplos oficiales.

Mi problema comienza cuando se añade a la etiqueta <rewrite> el web.config bajo <system.webServer> - en realidad cuando intento navegar a cualquier página en esta solicitud actual, consigo 500 - Internal server error.

Este es el bloque <rewrite> que he ido añadiendo:

<system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="test1"> 
       <match url="^default/([0-9]+)/([_0-9a-z-]+)" /> 
       <action type="Rewrite" url="default.aspx?id={R:1}&amp;title={R:2}" /> 
      </rule> 
     </rules> 
    </rewrite> 
</system.webServer> 

Respuesta

30

Sólo tenía el mismo error y se encontró una solución. Necesita instalar el módulo para IIS para la reescritura de URL. puede dowload aquí: http://www.iis.net/download/URLRewrite

Cheers,

+2

en IIS 8, pero no resolvió el problema de ninguna otra manera? –

4

tuve la reescritura del módulo 2.0 Url instalado también. Sin embargo, en algún momento también desinstalé y volví a instalar iis7, por lo que creo que el módulo de reescritura no se registró correctamente en iis. Obtuve el mismo error que el anterior, incluso si acabo de agregar un conjunto vacío de etiquetas al web.config.

Mi solución fue desinstalar el Módulo de Reescritura de Url (a través de Programas y Características) y reinstalarlo usando el Instalador de la Plataforma Web. Paré iis7 durante la instalación (no estoy seguro de si importaba). No necesité reiniciar.

+1

Instalación de módulos a través de Web Platform Installer, gracias :) –

+0

donde en el árbol de 'programas y características' encuentras URL Rewrite? –

+0

lo encontró ... está listado en los programas y cuenta con la función raíz. no bajo los componentes de Windows. –

0

Installer de URL módulo de reescritura de extensión se instala el esquema de la sección de reescritura se define en el archivo C: \ Windows \ System32 \ inetsrv \ config \ schema \ rewrite_schema.xml.

Cuestiones relacionadas