¿Cómo servir contenido estático sin https en un sitio seguro?

8

Quiero servir contenido estático desde mi sitio, pero mi sitio es solo https. Mi servidor http estático solo sirve contenido http (no https), pero muchos usuarios de IE se quejan de no poder iniciar sesión.

¿Que necesito hacer? ¿Debo agregar https a mi servidor http de contenido estático?

licorna
fuente

Respuestas:

13

Internet Explorer y yo creemos que algunos otros navegadores avisarán a un usuario cuando httpsse sirvan los activos de un sitio que usa el protocolo http. La primera mejor solución es permitir que su servidor de activos estáticos sirva contenido seguro y que su sitio use un protocolo consistente. La segunda mejor solución será crear una página en su sitio seguro que sea un proxy, básicamente necesita crear una página dinámica que llame a la página o activo externo, y la devuelva a través de ese proxy. La forma en que se escribe esa página depende del lenguaje de programación dinámico disponible en el servidor seguro.

Básicamente, IE tiene un problema de seguridad legítimo con la mezcla de protocolos. Se sabe que puede confiar en el httpsservidor, pero no confía en el httpuno.

artlung
fuente
1
Otros navegadores se degradan en formas menos ruidosas para contenido mixto, a menudo modificando el comportamiento del icono del 'candado' al que solo presta atención la mitad de la población de Internet. Estoy de acuerdo en que IE está haciendo 'lo correcto (TM)' lanzando una advertencia obvia. Es correcto, algunos elementos se enviaron de forma segura, otros no.
Tim Post
Cuanto antes haya soporte nativo para bloquear las cookies a HTTP cuando se usa HTTPS, más pronto este mensaje puede desaparecer y dejar de causar problemas. No es que los encabezados HTTP adicionales sean incluso deseados para el contenido estático que se sirve fuera de la página HTTPS.
Metalshark
2
@Metalshark: es mucho más que solo cookies. Cuando miras una página HTTPS, quieres poder confiar en todo lo que dice. Alguien podría falsificar una imagen y reemplazar lo que muestra / dice, por ejemplo. También desea vincular a scripts confiables y no alterados.
Bruno
0

Creo que necesita aclarar su pensamiento porque su pregunta realmente no tiene sentido.

Estático y seguro no son mutuamente excluyentes o incluso relacionados entre sí. Puede tener contenido estático seguro y contenido no estático no seguro. Seguro solo significa que está encriptado (SSL, es decir, https). Estático significa que no se genera por solicitud para el cliente. Estos son dos conceptos fundamentalmente diferentes.

Si no está mezclando su terminología, le preguntaría por qué su servidor seguro no puede servir contenido estático. Supongo que sí, así que solo necesita poner su contenido estático en el servidor seguro y luego un navegador no se quejará del contenido mixto http / https porque todo será https. Si realmente hay alguna limitación técnica en el servidor seguro que impide que sirva contenido estático (por ejemplo, ni siquiera puede servir un archivo CSS), entonces sí, debería considerar agregar SSL al otro servidor que está utilizando.

SO
fuente