Saltar al contenido

Cómo permitir contenido http dentro de un iframe en un sitio https

Intenta comprender el código de forma correcta antes de usarlo a tu trabajo y si tquieres aportar algo puedes comentarlo.

Solución:

Nota: Si bien esta solución puede haber funcionado en algunos navegadores cuando se escribió en 2014, ya no funciona. Navegar o redirigir a una URL HTTP en un iframe Los navegadores modernos no permiten la inserción en una página HTTPS, incluso si el marco comenzó con una URL HTTPS.

La mejor solución que creé es simplemente usar google como proxy ssl…

https://www.google.com/search?q=%http://yourhttpsite.com&btnI=Im+Feeling+Lucky

Probado y funciona en firefox.

Otros metodos:

  • Use un tercero como embed.ly (pero en realidad solo es bueno para las API de http conocidas).

  • Cree su propia secuencia de comandos de redirección en una página https que controle (una simple redirección de javascript en una página vinculada relativa debería funcionar. Algo como: (puede usar cualquier idioma/método)

    https://example.com Eso tiene un iframe que enlaza con…

    https://example.com/utilities/redirect.html Que tiene un script de redirección js simple como …

    document.location.href ="http://thenonsslsite.com";

  • Alternativamente, puede agregar una fuente RSS o escribir algún lector/analizador para leer el sitio http y mostrarlo dentro de su sitio https.

  • También podría/debería recomendar al propietario del sitio http que cree una conexión SSL. Aunque no sea por otra razón que aumenta el seo.

A menos que pueda hacer que el propietario del sitio http cree un certificado ssl, la solución más segura y permanente sería crear una fuente RSS que obtenga el contenido que necesita (presumiblemente, en realidad no está ‘haciendo’ nada en el sitio http, es decir, decir no iniciar sesión en ningún sistema).

El problema real es que tener elementos http dentro de un sitio https representa un problema de seguridad. No hay formas completamente kosher de evitar este riesgo de seguridad, por lo que las anteriores son solo soluciones actuales.

Tenga en cuenta que puede desactivar esta medida de seguridad en la mayoría de los navegadores (usted mismo, no para otros). También tenga en cuenta que estos “trucos” pueden volverse obsoletos con el tiempo.

Según la generalidad de esta pregunta, creo que deberá configurar su propio proxy HTTPS en algún servidor en línea. Realice los siguientes pasos:

  • Prepare su servidor proxy: instale IIS, Apache
  • Obtenga un certificado SSL válido para evitar errores de seguridad (gratuito de beginsl.com, por ejemplo)
  • Escriba un contenedor, que descargará contenido inseguro (cómo hacerlo a continuación)
  • Desde su sitio/aplicación, obtenga https://yourproxy.com/?page=http://insecurepage.com

Si simplemente descarga el contenido del sitio remoto a través de file_get_contents o similar, aún puede tener enlaces inseguros al contenido. Tendrás que encontrarlos con expresiones regulares y también reemplazar. Las imágenes son difíciles de resolver, pero encontré una solución aquí: http://foundationphp.com/tutorials/image_proxy.php

Sé que esta es una publicación anterior, pero otra solución sería usar cURL, por ejemplo:

redirigir.php:

luego en su etiqueta iframe, algo como:


Este es solo un ejemplo MÍNIMO para ilustrar la idea: no desinfecta la URL ni evita que otra persona use redirect.php para sus propios fines. Considere estas cosas en el contexto de su propio sitio.

Sin embargo, la ventaja es que es más flexible. Por ejemplo, puede agregar alguna validación de los datos de $ curl'd para asegurarse de que realmente es lo que desea antes de mostrarlo; por ejemplo, pruebe para asegurarse de que no sea un 404 y tenga contenido alternativo listo si es necesario. es.

Además, estoy un poco cansado de confiar en las redirecciones de Javascript para algo importante.

¡Salud!

Te mostramos reseñas y valoraciones

Tienes la opción de reafirmar nuestro trabajo añadiendo un comentario o dejando una valoración te estamos agradecidos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *