Seleccionar página

Solucionar problema contenido mixto al cambiar a HTTPS

por | Oct 17, 2017 | Desarrollo web

Índice de contenidos

Problema contenido mixto en HTTPS

Después de instalar el certificado SSL y modificar nuestra conexión a HTTPS debemos revisar que todo funcione correctamente. Un problema común cuando cambiamos nuestra web de HTTP a HTTPS son las advertencias generadas por el navegador que nos indican que la web no es completamente segura. Es lo que denominamos: problema contenido mixto.

¿Qué es el contenido mixto?

El contenido mixto en una web con conexión HTTPS es cuando dentro del HTML hay llamadas a carga de recursos con conexiones  HTTP. 

Contenido mixto HTTPS pasivo y activo

Hay dos tipos de contenido mixto: pasivo y activo.

El contenido mixto pasivo es cuando se cargan recursos HTTP en el atributo src de etiquetas <img>, <audio>, <video>…

<img src=»http://

Este tipo de contenido pasivo, supone una amenaza de seguridad menor que el contenido activo. El contenido activo son llamadas a HTTP dentro de las etiquetas HTML <script>, <link> …

Conclusión: el contenido mixto en tu WordPress puede estar en los widget que cargan imágenes o en archivos php, css y js de tu sitio.

Mostrar contenido mixto

Cuando una página de nuestro sitio contiene contenido mixto, el navegador nos lo indica con una advertencia. En la imagen siguiente puedes ver un ejemplo de advertencia en Chrome. Si pulsamos sobre el indicador de advertencia leeremos la siguiente información : «Es posible que los atacantes puedan ver las imágenes que ves en este sitio web y que las modifiquen para engañarte«

En este caso concreto el navegador ya nos advierte que el problema contenido mixto es debido a la carga de una o varias imágenes empleando el protocolo HTTP. Para localizar la imagen o imágenes que causan el problema lo mejor, es abrir las «Herramientas para desarrolladores» de tu navegador. Esta herramienta localiza el fragmento de código que causa el problema. Te muestro un ejemplo con Chrome.

Solucionar Problema Contenido Mixto

Solucionar problema contenido mixto

Ya hemos localizado que la advertencia: «la provoca un widget que carga una imagen con conexión http». 

He marcado las dos llamadas HTTP dentro del widget, pero OJO solo una provoca la advertencia de contenido mixto:

Paso unoLa llamada HTTP la realiza una etiqueta <a> AHÍ NO ESTÁ EL PROBLEMA, obviamente los enlaces pueden pedir conexiones HTTP y eso no es contenido mixto, no carga nada, no estamos pidiendo ningún recurso.

Paso dosEl problema se encuentra en el atributo src de la etiqueta <img> (Carga de contenido pasivo). Para solucionarlo cambiamos la URL dentro del atributo src y quitamos el HTTPS:. Nos debe quedar de la siguiente forma:

<img style=»border:0px» src=»//www.elegantthemes.com/banners/120x600gif.gif» width=»120″ height=»600″ alt=»»>

Guardamos los cambios y listo.

Contenido mixto en widgets

Vamos revisando todas las páginas y modificamos los widget que producen error.

Si el problema lo provoca contenido mixto activo, carga de recursos en archivos del sitio (por ejemplo, llamadas dentro de archivos PHP), debes proceder de la misma forma. Localiza los archivos que provocan el error:

  • si son enlaces internos a tu propia web modifica http por https.
  • Si estás cargando recursos externos modifica http:// por // (quitamos el http para llamar a otras páginas web).

Si usas la función get_template_directory_uri() en tu sitio y devuelve http

Si desde algún archivo de tu tema, cargas un recurso empleando la función de WordPress «get_template_directory_uri()» y observas que apunta a la dirección de tu blog con http, puedes añadir el siguiente script en el archivo functions.php

function check_if_https() {
if ( !is_ssl() ) {
wp_redirect('https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 301 );
exit();
}
}
add_action ( 'template_redirect', 'check_if_https', 1 );

Este script comprueba si se está utilizando SSL (https). Si no se está utilizando, crea una redirección (301) a la URL con https. 

Cambiar de HTTP a HTTPS los enlaces internos de WordPress

Debes asegurarte que en Ajustes >> Generales de tu WordPress, la dirección de sitio y wordpress esté modificada. 

Problemas contenido mixto en WordPress

Por supuesto todos los enlaces internos a tu sitio deben estar modificados. No tendrás ningún problema con estas últimas consideraciones si has seguido los pasos del tutorial:

⇒ Cómo cambiar de HTTP a HTTPS todos los enlaces internos de tu WordPress

 

 

49 Comentarios

  1. Sandra

    Te pasaste!!! Me evitaste un tremendo dolor de cabeza, y pude resolver fácilmente mi problema. Muchas gracias!!!

    Responder
    • Lph by Nerea Liébana

      Sandra gracias a ti por comentar, no sabes lo importante que es trabajar unas horas y que le sirva de ayuda a alguien.
      Feliz día compañera!

      Responder
  2. walter

    de verdad muchisimas gracias! me has quitado un dolor de cabeza tremendo! estaba tan molesto y frustrado con mi problema de «sitio no seguro» y gracias a tu articulo me sirvió a la perfección

    Responder
    • Lph by Nerea Liébana

      Buenos días Walter, gracias a ti, te deseo un feliz día

      Responder
  3. Jose Rodriguez

    Esa gente como tú merece una habitación VIP en el cielo, muchas

    Responder
    • Lph by Nerea Liébana

      Gracias Jose Rodriguez,
      añadiría a tu comentario: con gente como tú merece la pena hacer el esfuerzo de escribir tutoriales.
      Feliz día

      Responder
    • Lph by Nerea Liébana

      Buenos días, José Miguel
      he intentado entrar en tu sitio para ayudarte con el contenido mixto, pero parece que tienes la web en mantenimiento:
      «Excuses voor het ongemak, maar we verbeteren de website voor een betere ervaring. Kom snel terug …»
      me avisas cuando esté disponible.
      Feliz día!

      Responder
  4. Jose Miguel Correa

    Tengo problemas con eso, creo que tengo contenido mixto pero no se como se soluciona. Gracias por abrir este espacio para aprender.

    Como saber si tengo contenido mixto en https://crudenfs.nl/ gracias de ante mano

    Responder
    • Lph by Nerea Liébana

      Buenos días, José Miguel
      he intentado entrar en tu sitio para ayudarte con el contenido mixto, pero parece que tienes la web en mantenimiento:
      «Excuses voor het ongemak, maar we verbeteren de website voor een betere ervaring. Kom snel terug …»
      me avisas cuando esté disponible.
      Feliz día!

      Responder
  5. jorge

    Buenas noches, tengo el sitio xradio.ar los reproductores de repente (si el usuario navega en chrome) no funcionan, el sitio es seguro mixto, cuando uno aplicaba el reproductor se volvía sitio no seguro, pero ahora ya no deja que funcionen. Qué podré hacer? saludos

    Responder
    • Lph by Nerea Liébana

      Buenos días Felipe, ya puedes ver las imágenes.

      Responder
  6. sinai

    hola saludos, tengo problema con una web ya que no me carga, solo aparece el signo de exclamacion en un circulito y dice que la conexion no es segura, la web no es mia pero la utilizo como forma de trabajo si puede ayudarme se lo agradeceria https://iqoption.com/es/download

    Responder
  7. Andrés

    Hola, una consulta, se puede tener contenido mixto por el formulario? Ese es el único mensaje que me sale pero no lo llego a identificar.

    Responder
    • Lph by Nerea Liébana

      Buenos días Andrés, estoy repasando la página y no encuentro donde tienes el problema con el contenido mixto, si me indicas la URL que da problemas lo revisó y te informo.
      Saludos,

      Responder
  8. rodrigo

    hola. por que bloquea mi reproductor html de mi pagina web. cuando instalo https://

    Responder
    • Lph by Nerea Liébana

      Hola Rodrigo, observa lo siguiente:
      (index):150 Mixed Content: The page at ‘https://www.radioenergiaperu.com/’ was loaded over HTTPS, but requested an insecure resource ‘http://player.cloudvps.live/radioenergiaperu/’. This request has been blocked; the content must be served over HTTPS.

      ese es uno de los errores, por eso lo bloquea, para solucionarlo, modifica dentro del iframe el siguiente enlace:
      src=»http://player.cloudvps.live/radioenergiaperu/

      le quitas el http y lo dejas así:
      src=»//player.cloudvps.live/radioenergiaperu/»

      y en la cabecera en la etiqueta audio, modifica este enlace:
      src=»http://radio.dns-extreme.info:9994/;»
      por el siguiente:
      src=»//radio.dns-extreme.info:9994/;»

      Cuando hagas las comprobaciones tienes que seguir revisando todas las páginas y asegurarte que no tienes enlaces http, ni propios ni externos. En el post está explicado cómo trabajar con unos u otros.
      Que tengas un buen día.

      Responder
  9. Gustavo

    Muchas gracias, información simple pero muy valiosa.

    Responder
  10. Ricardo

    hola muy buenos dias, no se si envie este mensaje antes, me disculpas si asì lo hice.

    tengo un problema con bokehphotography.com.co, me notifica que tengo contenido no seguro, el cual corresponde a la imagen del slider del home

    me podrìas colaborar para solucionar el problema?

    Responder
    • Lph by Nerea Liébana

      Buenos días Ricardo, ¿me envías la url que provoca la notificación?
      Saludos,

      Responder
      • Ricardo Bustos

        Gracias por responder, bueno, pues el problema lo pude solucionar con un plugin, aunque me gustaría poder hacerlo sin necesidiad de eso , o sea me gustaría deshacerme de un plugin

        bokehphotography.com.co

        Responder
        • Lph by Nerea Liébana

          Hola Ricardo, si desactivas el plugin y haces una lista de las URL donde están las imágenes que dan problemas, podemos revisarlas todas e ir tratando cada una de ellas. Con el plugin activado no puedo hacer el seguimiento.
          Feliz día

          Responder
  11. Ricardo

    hola muy buenos dìas, tengo un problema con una imagen en mi website, me podrìas colaborar?
    bokehphotography.com.co

    Responder
  12. Joaquin Actis Danna

    Buenos dias Nerea, tengo un problema que ya se cual es, es una imagen que esta en http y resulta que cuando la subo por elementor dice que esta en https la imagen y cuando actualizo la informacion se convierte nuevamente en http.

    Me podrias ayudar con eso?

    Muchas gracias

    Responder
    • Lph by Nerea Liébana

      Buenos días Joaquin, ¿me indicas la URL de la imagen para que pueda ver lo que pasa?
      Que tengas un buen día,

      Responder
    • Lph by Nerea Liébana

      Saludos Alejandro

      Responder
  13. Carolina

    Hola! Tengo contenido mixto en mi web pero me dice que en las hojas de estilo. No uso wordpress sino osclass. Te puedo enviar una captura de pantalla? Es que no cuentro dónde están las líneas de código que me indica el navegador. Gracias.

    Responder
    • Lph by Nerea Liébana

      Buenos días Carolina, claro que me puedes enviar una captura, de todas formas revisa si tienes algún http en la hoja de estilos, seguramente cargas alguna imagen desde el css.

      Responder
  14. ana

    Hola, gracias por el post.

    He pasado mi web de http a https sin problema pero no me aparece el candado porque tengo contenido mixto en dos imágenes que siguen en http.

    ¿Alguien sabe cómo las puedo pasar a https? Paso por paso porque no entiendo dónde debo acceder.
    Muchas gracias por la ayuda.

    Responder
    • Lph by Nerea Liébana

      Buenos días Ana, si me facilitas la URL de tu web te indico donde tienes el problema.

      Responder
  15. Marta

    Hola Raquel, muchas gracias por tu artículo, muy útil. He seguido tus indicaciones y he localizado el motivo de contenido mixto: insecure image ‘http://image/example.png’.

    ¿Podrías indicarme qué debo modificar y desde dónde realizarlo?
    Observación: En el panel de administración de wordpress no localizo esa imagen en la biblioteca de medios.
    Gracias

    Responder
    • Lph by Nerea Liébana

      Buenos días Marta, estamos hablando de la web: http://www.aprgrupo.com, veo que en el pie de página también tienes que modificar enlaces, respecto a la imagen concreta (http://image/example.png‘) si me das la URL de la página de error lo miro. De todas formas supongo que has revisado los widget laterales y todos los archivos del tema.
      Ya me cuentas,

      Responder
  16. Raquel

    Buenas tardes, muchísimas gracias por el artículo, este tipo de cosas me vienen muy bien porque soy una principiante…pero me surge una duda. He llegado hasta la parte en la que dices «Ya hemos localizado que la advertencia: “la provoca un widget que carga una imagen con conexión http”. Y a partir de ahí, no sé cómo seguir para solucionar el problema. Es decir, no sé ni hacer que me aparezca la ventanita que a ti te sale con los dos enlaces, por lo que no sé cómo continuar. Agradecería cualquier ayuda y disculpa si es una pregunta un poco tonta, estoy muy perdida ahora mismo.

    Muchísimas gracias!

    Responder
    • Lph by Nerea Liébana

      Hola Raquel, la ventanita es un widget de WordPress que puedes ver en tu administrador en: Apariencia >> Widget
      ánimo!

      Responder
  17. Claudio

    Tengo una web ya con su candadito verde pero un archivo php (que muestra la canción que esta sonado) no muestra su resultado en la misma pues hace referencia a un sitio sin https que solo es con numero IP, ya he probado poner // delante. Si lo ejecuto localmente funciona pero en el servidor de la web no. No puedo dar con la solución. Agradecería mucho una ayuda.

    Responder
    • Lph by Nerea Liébana

      Hola Claudio, prueba añadiendo el siguiente script al archivo functions.php:
      function check_if_https() {
      if ( !is_ssl() ) {
      wp_redirect(‘https://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’], 301 );
      exit();
      }
      }
      add_action ( ‘template_redirect’, ‘check_if_https’, 1 );

      Responder
  18. Malco

    muchas gracias me funciono perfectamente
    tuve que hacer un UPDATE imagenes SET urlimg= REPLACE(ulrimg,’http:’,»); para quitar el http: de mis imagenes en mi tabla pero ahora hay algunas imagenes que no me estan cargando , localmente si cargan las imagenes pero en prouccion no….

    ni modo tendre que cambiar algunas imagenes pero ya tengo el candadito verde que queria.. GRACIAS

    Responder
    • Lph by Nerea Liébana

      Gracias a ti, si necesitas algo por aquí estoy.
      Feliz día!

      Responder
  19. Alejandro

    Genial, no encontraba el problema y era eso!! muchísimas gracias

    Responder
    • Lph by Nerea Liébana

      Gracias a ti Alejandro, me alegra que hayas solucionado el problema!!!

      Responder
  20. Ricardo

    Gracias, estaba teniendo problemas con mi blog de afiliado, había puesto una foto en el widget que me estaba volviendo loco.

    Responder
    • Lph by Nerea Liébana

      Gracias a ti Ricardo, me alegra que me comuniques que el artículo te ha ayudado.
      Que tengas un feliz día!

      Responder

Enviar un comentario

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