Esta sección de la documentación se aplica a URL Rewrite 2.0 para IIS 7.
URL Rewrite 2.0 para IIS 7 y versiones posteriores es una versión incremental que incluye todas las características de la versión 1.1 y agrega compatibilidad con la extensibilidad de .NET y la reescritura de respuestas de salida. Más concretamente, se puede usar para lo siguiente:
Implementar lógica compleja de reescritura mediante proveedores de reescritura escritos en .NET
Reemplazar las direcciones URL generadas por una aplicación web en el código HTML de respuesta por un equivalente más descriptivo para los usuarios y los motores de búsqueda
Modificar los vínculos del marcado HTML generado por una aplicación web detrás de un proxy inverso.
Corregir el contenido de cualquier respuesta HTTP mediante la coincidencia de patrones de expresión regular.
Modificar los encabezados de solicitud y respuesta HTTP, y las variables de servidor IIS.
Características
URL Rewrite 2.0 incluye las siguientes características clave:
Proveedores de reescritura personalizados (novedad de RTW). Los proveedores de reescritura se pueden usar cuando una lógica de reescritura de direcciones URL no se puede expresar en términos de patrones de expresiones regulares, o bien cuando es necesario tomar decisiones de reescritura basadas en datos almacenados fuera del archivo web.config (por ejemplo, una base de datos SQL o archivos de texto). Los proveedores de reescritura de cliente se pueden implementar en cualquier lenguaje .NET.
Motor de reescritura de respuestas basadas en reglas. Las reglas de salida se usan para expresar la lógica de con qué comparar partes de la respuesta y qué hacer si la comparación se realiza correctamente. Los administradores del servidor web y del sitio pueden usar reglas de salida para definir una lógica compleja de reescritura de respuestas.
Reescritura dentro del contenido de etiquetas HTML específicas. En lugar de examinar toda la respuesta de una coincidencia determinada, la regla se puede configurar para que solo busque dentro de determinadas etiquetas HTML, como <a>, <img>, etc. De este modo, el patrón se simplifica considerablemente y el proceso de aplicar la regla al contenido es mucho más rápido en comparación con su aplicación toda la respuesta.
Condiciones previas para las reglas de salida. La aplicación de reglas de reescritura en todas las respuestas es una operación costosa y en la mayoría de los casos no es necesaria. Las condiciones previas se usan para comprobar los metadatos de respuesta para determinar si se debe aplicar la evaluación de reglas de salida.
Reescritura de encabezados de respuesta HTTP. Las reglas de reescritura de salida se pueden usar para modificar los encabezados de respuesta HTTP existentes o para establecer otros nuevos.
Lista de permitidos para variables de servidor. Para evitar que las reglas de reescritura distribuidas modifiquen accidental o intencionadamente variables de servidor de IIS que puedan afectar al comportamiento de seguridad o en tiempo de ejecución de una aplicación web, las variables de servidor modificables ahora se deben agregar explícitamente a la lista de permitidos.
HtmlEncode (función). La reescritura de salida a menudo puede usar datos que no sean de confianza (por ejemplo, cadenas de consulta o encabezados HTTP) a fin de crear una cadena de reemplazo para insertarla en la respuesta HTTP. En esos casos, se debe usar la función HtmlEncode para evitar la inserción de scripts del lado cliente en la respuesta, lo que podría dar lugar a una vulnerabilidad de scripting entre sitios.
Seguimiento de grupos de captura entre condiciones de regla. La lógica de referencia inversa de las condiciones de URL Rewrite 1.1 solo funcionaba con las últimas condiciones coincidentes. En la versión 2, es posible configurar la lógica de referencia inversa para que funcione con todas las condiciones coincidentes.
Plantilla de reglas de proxy inverso (novedad de RTW). Esta plantilla se puede usar para generar rápidamente reglas de reescritura de entrada y salida que implementan la configuración de proxy inverso.
Registro de direcciones URL reescritas. Las reglas de reescritura se pueden configurar para registrar la dirección URL reescrita en los registros W3C de IIS, en lugar de registrar una URL solicitada originalmente.
Interfaz de usuario actualizada en el Administrador de IIS. La interfaz de usuario se ha mejorado considerablemente para representar mejor la configuración del módulo y simplificar estas tareas comunes, como la configuración de reglas de reescritura y las condiciones de reescritura.
Si ya está instalada una versión anterior de URL Rewrite, como v1.0 y v1.1, se actualizará a la versión v2.0
Si ya está instalada una versión RC de URL Rewrite 2.0, se actualizará a la versión RTW.
Problemas conocidos
La reescritura de respuestas no funciona con compresión estática. Tendrá que deshabilitar la compresión estática de IIS para poder usar la reescritura de respuestas.
Las reglas de salida no se aplican a las respuestas codificadas de transferencia fragmentada si rewriteBeforeCache está habilitado. Establezca rewriteBeforeCache en false si necesita reescribir las respuestas codificadas con transferencia fragmentada.
DbProvider: este proveedor se puede usar para recuperar las asignaciones de reescritura de una tabla de base de datos de SQL Server mediante la ejecución de un procedimiento almacenado;
FileMapProvider: este proveedor se puede usar para recuperar las asignaciones de reescritura almacenadas en un archivo de texto;
FileContainsProvider: este proveedor se puede usar para comprobar si alguna cadena de un archivo de texto es una subcadena de la cadena de entrada del proveedor.
El módulo URL Rewrite 2.0 de Microsoft para IIS 7 y versiones superiores permite a los administradores de IIS crear potentes reglas personalizadas para asignar URL de solicitud a URL amigables...
Este tutorial le guiará por la creación y la prueba de un conjunto de reglas de reescritura para el Módulo URL Rewrite. Requisitos previos Este tutorial requiere...
Con el lanzamiento del módulo URL Rewrite para IIS y la inclusión del enrutamiento de ASP.NET en .NET Framework 4, ha habido muchas preguntas de des...
La reescritura de direcciones URL de IIS 2.0 permite a los administradores web crear reglas eficaces para implementar direcciones URL que sean más fáciles de recordar y más fáciles para que los motores de búsqueda encuentren. Mediante el uso de plantillas de reglas, reescritura de mapas, proveedores de .NET y otras funciones integradas en el Administrador de IIS, los administradores web pueden configurar fácilmente reglas para definir el comportamiento de reescritura de direcciones URL en función de encabez
Obtenga información sobre cómo las API de reescritura de direcciones URL de IIS le permiten crear reglas que definan el comportamiento de las direcciones URL.
Esta sección de la documentación se aplica a la versión 2.0 del módulo de reescritura url para IIS 7 Este artículo proporciona información general sobre la diversión del módulo de reescritura de direcciones URL 2.0...
En este artículo se proporciona información general sobre el módulo de reescritura de direcciones URL y se explican los conceptos de configuración que usa el módulo. Tabla de contenido funcional...
El seguimiento de solicitudes erróneas (FRT) de IIS 7.0 y versiones posteriores es una herramienta eficaz para solucionar errores de procesamiento de solicitudes. El FRT puede utilizarse con el módulo de reescritura de URL...