Error en el módulo de inicialización de aplicaciones cuando el sitio web requiere SSL
Este artículo le ayuda a resolver el problema en el que el módulo de inicialización de aplicaciones no funciona para un sitio web configurado para requerir la capa de sockets seguros (SSL).
Versión del producto original: ASP.NET
Número KB original: 2843964
Síntomas
El módulo de inicialización de aplicaciones anteriormente conocido como Application Warmup no funciona para el sitio web configurado para requerir SSL.
Causa
Este comportamiento es una característica del diseño de la aplicación.
El módulo de calentamiento envía la solicitud mediante el Protocolo de transferencia de hipertexto (HTTP) y no con el protocolo de transferencia de hipertexto seguro (HTTPS). La solución alternativa sugerida permitirá las solicitudes HTTP a localhost desde el módulo de calentamiento, pero se redirige a HTTPS para el resto de las solicitudes, por lo que el diseño aquí significa que el módulo de calentamiento realiza solicitudes a través de HTTP.
Solución
Para evitar esta limitación, puede considerar la posibilidad de habilitar HTTP (desmarcada la opción Requerir SSL en EL Administrador de IIS SSL Configuración ) y usar una regla de reescritura de direcciones URL para redirigir las solicitudes HTTP a HTTPS a excepción de la solicitud procedente del módulo de > calentamiento:
<rewrite>
<rules>
<rule name="No redirect on warmup request (request from localhost with warmup user agent)"
stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="localhost" />
<add input="{HTTP_USER_AGENT}" pattern="Initialization" />
</conditions>
<action type="Rewrite" url="{URL}" />
</rule>
<rule name="HTTP to HTTPS redirect for all requests" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>