Recibo un error de restablecimiento de la conexión en los navegadores cuando redirijo una URL de http a https. Estoy tratando de localizar el problema, miré C:\Windows\System32\LogFiles\HTTPERR
y solo veo Timer_ConnectionIdle
errores en el registro. Por lo que pude encontrar, esos no están relacionados.
No hay registros en la FailedReqLogFiles
carpeta y no veo nada más que registros de acceso en la W3SVC1
carpeta.
Estoy completamente perdido sobre adónde ir desde aquí. Aquí está mi regla de redireccionamiento.
URL coincidente
URL solicitada: Coincide con el patrón
Usando: Expresiones regulares
Patrón: .*
e Ignorar mayúsculas y minúsculas
Condiciones
Agrupación lógica: Coincidir con todo
Entrada: {HTTPS}
Tipo: Coincide con el patrón Patrón
: desactivado
Variables del servidor
Blanco
Acción
Tipo de acción: Redireccionamiento
URL de redireccionamiento: https://{SERVER_NAME}/{R:0}
Agregar cadena de consulta: marcado
Tipo de redireccionamiento: Permanente (301)
Respuesta1
Este fragmento de web.config
funciona para mí.
<rule name="Redirect HTTP to HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="OFF" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>
La principal diferencia entre esta y su configuración parece ser HTTP_HOST
vs. SERVER_NAME
Estoy usando un patrón de reemplazo R:1
mientras que tú estás usando R:0
, pero esto se puede explicar por la forma en que definí mi patrón de coincidencia en (.*)
lugar de .*
.