Pregunta

Tengo un único directorio en mi página web ASP.Net que tengo que tener SSL activado. Para todos los otros directorios, no quiero SSL activado.

El uso de IIS, he comprobado el Requerir canal seguro (SS) y casillas de verificación de cifrado de 128 bits para la carpeta Quiero requerir SSL.

Ahora, cuando un usuario escribe "http: //", para mi directorio seguro, quiero redirigir automáticamente a "https: //". He intentado dos enfoques, y ambos han fracasado.

Enfoque 1: Cambiar la página de errores de IIS personalizada para el directorio de 403; 4 a una URL que apunta a: "/Intranet2/SSLRedirect.aspx". El SSLRedirect apuntará al sitio correcto. Cuando lo hago, me sale "La petición especificada no puede ser ejecutado desde la corriente del grupo de aplicaciones" de error, a pesar de que la URL es una parte de la página web y que sólo tiene un grupo de aplicación para todo el sitio web (no el DefaultAppPool).

Enfoque 2: Añadir un web.config en el directorio para overide el código de error 403. Se ve así:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <customErrors defaultRedirect="../Default.aspx" mode="On">
            <error statusCode="403" redirect="../SSLRedirect.aspx" />
        </customErrors>
    </system.web>
</configuration>

Pero cuando hago este cambio, siempre me dan el valor predeterminado definido en IIS 403.4.

¿Alguna sugerencia?

¿Fue útil?

Solución

Enfoque 1: Parece que está equivocado al pensar que sólo tiene un grupo de aplicación configurado para todo el sitio web. Es probable que tenga una para el sitio predeterminado y otro para un directorio virtual que se está trabajando. Sus opciones son:

a) reconfigurarlo para que realmente tiene solamente un grupo de aplicación para todo el sitio,

b) Servir la página de error de un directorio que está en el mismo grupo de aplicación como la página que genera el error

c) Ajustar el registro de cerrar este error de apagado: Ajuste IgnoreAppPoolForCustomErrors a 1 en HKLM \ SYSTEM \ CurrentControlSet \ Services \ W3SVC \ Parameters. Ver http://blogs.msdn.com/b/ rakkimk / archivo / 2006/09/01 / 735684.aspx

Enfoque 2: Errores personalizados en web.config se utilizan únicamente si asp.net es el manejo del error. Creo que IIS no está participando motor de manejo asp.net aquí porque el cheque SSL falló. Así que esto simplemente no funcionará aquí.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top