← Todos los checks
SeguridadSeveridad típica: Medio

Detector de contenido mixto

Detecta recursos cargados por HTTP en una página HTTPS, que viajan sin cifrar y rompen el candado.

Qué comprueba

Este escaner detecta recursos como imagenes, scripts o estilos que tu pagina HTTPS carga por HTTP sin cifrar. Esa mezcla se conoce como contenido mixto. El escaner revisa las referencias de la pagina para encontrar cuales no usan HTTPS.

Por qué importa

El contenido mixto viaja sin cifrar, asi que puede ser interceptado o manipulado aunque el resto de la pagina sea segura. Ademas, el navegador puede bloquear esos recursos o quitar el candado, dando sensacion de web insegura. En el peor caso, un script cargado por HTTP compromete toda la pagina.

Cómo se arregla

Cambia todas las referencias de recursos para que empiecen por https en lugar de http. Revisa especialmente enlaces a librerias externas, imagenes y fuentes antiguas. Si un recurso externo no ofrece HTTPS, busca una alternativa o alojalo tu mismo de forma segura.

Cómo funciona esta comprobación

Scanaris lee el HTML de tu página servida por HTTPS y busca referencias a recursos que empiecen por http://: scripts, hojas de estilo, iframes, imágenes, vídeos, audio y fuentes. Los separa en dos grupos. El contenido mixto activo (scripts, estilos, iframes) abre un hallazgo de severidad media, porque esos recursos pueden ejecutar código o cambiar la página. El contenido mixto pasivo (imágenes, vídeo, audio) abre uno de severidad baja: no ejecuta nada, pero viaja sin cifrar y rompe el candado. Solo se revisan las referencias que aparecen en el HTML inicial; los recursos que añade JavaScript después no se ven por esta vía.

Por qué importa

Un script cargado por HTTP dentro de una página HTTPS es el peor de los casos: quien controle la red puede sustituirlo por otro y ejecutar lo que quiera en tu página, con la sesión del usuario. Por eso los navegadores modernos lo bloquean directamente, y tu web se rompe de forma silenciosa en esa parte. Para las imágenes, el navegador las carga pero retira el candado o muestra un aviso de "no seguro", que es lo que ve el usuario. En ambos casos el mensaje es el mismo: la página dice ser segura y no lo es del todo.

De dónde sale

Casi siempre de código antiguo: URLs copiadas de un tutorial o de una plantilla de hace años, una librería enlazada desde un CDN que entonces no tenía HTTPS, imágenes de un blog migrado, o un campo de la base de datos con la URL completa de una imagen subida cuando la web aún iba por HTTP. En WordPress es típico tras cambiar de HTTP a HTTPS sin actualizar las URLs guardadas.

Cómo arreglarlo

  • Cambia las referencias a https:// o a rutas relativas (/imagenes/foto.jpg), que heredan el protocolo de la página. Es la solución correcta y definitiva.
  • Si un recurso externo no tiene HTTPS, descárgalo y sírvelo desde tu dominio, o busca otra fuente. En 2026 casi nada legítimo sigue solo en HTTP.
  • En WordPress, actualiza las URLs guardadas en la base de datos con una herramienta de buscar y reemplazar que respete la serialización, y revisa las URL del sitio en los ajustes generales.
  • Como red de seguridad, la directiva de CSP upgrade-insecure-requests le dice al navegador que convierta automáticamente las peticiones http:// de tu página en https://. Sirve mientras limpias el código, pero no sustituye a la limpieza: el recurso tiene que existir en HTTPS para que funcione.
Content-Security-Policy: upgrade-insecure-requests

Comprueba que está arreglado

curl -s https://tudominio.com | grep -oE '(src|href)="http://[^"]+"' | sort -u

No debe salir nada. Después abre la página con la consola del navegador: cualquier recurso mixto que cargue JavaScript aparece ahí como aviso o bloqueo.

Preguntas frecuentes

Mi página carga bien y tiene candado. ¿Por qué me lo marca?

Porque el navegador puede estar bloqueando el recurso en silencio o subiéndolo a HTTPS por su cuenta. La referencia en tu HTML sigue siendo http:// y otros clientes (bots, navegadores antiguos, correos) no hacen esa corrección.

¿Las URLs que empiezan por // son contenido mixto?

No. Las URL relativas al protocolo heredan el de la página y en HTTPS cargan por HTTPS. Aun así, hoy se recomienda escribir https:// directamente.

¿Un enlace <a href="http://…"> cuenta?

No. Un enlace no carga nada en tu página; solo lleva al usuario a otro sitio. El contenido mixto es lo que la página incrusta.

Compruébalo en tu web

Escanea tu web gratis y mira si este y otros 44 checks pasan, con un prompt de arreglo por cada fallo.

Escanear mi web gratis

Del blog

Checks relacionados