Erreur Mixed Content : Contenu Mixte HTTP/HTTPS

Identifiez et corrigez les ressources HTTP qui bloquent votre site HTTPS.

L'erreur de contenu mixte (mixed content) se produit lorsqu'une page HTTPS charge des ressources via HTTP non sĂ©curisĂ©. Cela peut inclure des images, des scripts JavaScript, des feuilles de style CSS, des polices, ou des requĂȘtes AJAX. Les navigateurs modernes bloquent ces ressources pour protĂ©ger les utilisateurs.

Le contenu mixte compromet la sĂ©curitĂ© de votre site HTTPS. MĂȘme si la page principale est chiffrĂ©e, une ressource HTTP peut ĂȘtre interceptĂ©e ou modifiĂ©e par un attaquant. C'est pourquoi les navigateurs sont de plus en plus stricts sur ce sujet.

Ce guide vous aide à identifier toutes les ressources causant des erreurs de contenu mixte et à les corriger. Nous verrons également comment prévenir ce problÚme lors de migrations HTTP vers HTTPS.

SymptĂŽmes du Contenu Mixte

Voici comment le contenu mixte se manifeste :

  • Cadenas avec avertissement : au lieu du cadenas vert, vous voyez un cadenas gris avec un triangle d'avertissement ou un panneau d'information.
  • Ressources bloquĂ©es : les images n'apparaissent pas, les scripts ne fonctionnent pas, ou le style de la page est cassĂ©.
  • Avertissements console : la console dĂ©veloppeur affiche des avertissements "Mixed Content" avec les URLs des ressources problĂ©matiques.
  • FonctionnalitĂ©s cassĂ©es : les formulaires, sliders, ou autres Ă©lĂ©ments interactifs peuvent ne pas fonctionner si leurs scripts sont bloquĂ©s.

Sources de Contenu Mixte

Voici les causes courantes du contenu mixte :

  • URLs en dur dans le code : des URLs HTTP codĂ©es en dur dans le HTML, CSS, ou JavaScript au lieu d'utiliser des URLs relatives ou HTTPS.
  • Contenu de la base de donnĂ©es : les articles, pages, ou produits contiennent des images ou liens avec des URLs HTTP stockĂ©es en base.
  • Ressources externes : des scripts tiers, polices Google, ou widgets chargĂ©s via HTTP au lieu de HTTPS.
  • Migration incomplĂšte : lors du passage Ă  HTTPS, certaines rĂ©fĂ©rences HTTP n'ont pas Ă©tĂ© mises Ă  jour.

Identifier le Contenu Mixte

Utilisez ces méthodes pour trouver les ressources problématiques :

  1. Console développeur : ouvrez F12 > Console. Les erreurs de contenu mixte sont listées avec les URLs exactes des ressources.
  2. Why No Padlock : l'outil whynopadlock.com scanne votre page et liste toutes les ressources non sécurisées.
  3. Chrome DevTools Network : dans l'onglet Network, filtrez par "mixed-content" pour voir les requĂȘtes bloquĂ©es.
  4. Scan de site complet : des outils comme Screaming Frog ou JitBit HTTPS Checker scannent l'ensemble de votre site.

Corrections de Contenu Mixte

Voici comment corriger les problĂšmes courants :

<!-- AVANT : URL HTTP en dur -->
<img src="http://example.com/image.jpg">
<script src="http://cdn.example.com/script.js"></script>
<link href="http://fonts.googleapis.com/css?family=Open+Sans">

<!-- APRÈS : URL relative au protocole ou HTTPS -->
<img src="https://example.com/image.jpg">
<script src="https://cdn.example.com/script.js"></script>
<link href="https://fonts.googleapis.com/css?family=Open+Sans">

<!-- OU : URL relative (recommandĂ© pour le mĂȘme domaine) -->
<img src="/images/image.jpg">
<script src="/js/script.js">

<!-- En PHP : URL dynamique -->
<img src="<?= rtrim($_ENV['APP_URL'], '/') ?>/images/image.jpg">

<!-- Header CSP pour bloquer et reporter le contenu mixte -->
Content-Security-Policy: upgrade-insecure-requests;
Content-Security-Policy-Report-Only: default-src https:; report-uri /csp-report

Remplacez les URLs HTTP par HTTPS ou utilisez des URLs relatives. Le header upgrade-insecure-requests demande au navigateur de convertir automatiquement les requĂȘtes HTTP en HTTPS.

Bonnes Pratiques

Prévenez le contenu mixte avec ces pratiques :

  • Utilisez des URLs relatives : pour les ressources de votre propre domaine, utilisez des chemins relatifs (/images/logo.png) plutĂŽt que des URLs absolues.
  • Configurez un CSP : le header Content-Security-Policy avec upgrade-insecure-requests convertit automatiquement les requĂȘtes HTTP.
  • Auditez rĂ©guliĂšrement : scannez pĂ©riodiquement votre site pour dĂ©tecter les nouvelles rĂ©fĂ©rences HTTP ajoutĂ©es par le contenu.
  • Mettez Ă  jour la base de donnĂ©es : aprĂšs migration HTTPS, remplacez les URLs HTTP dans la base avec un script SQL ou un plugin.

Checklist Contenu Mixte

  • Console dĂ©veloppeur vĂ©rifiĂ©e pour erreurs mixed content
  • URLs HTTP en dur remplacĂ©es dans le code
  • Base de donnĂ©es mise Ă  jour
  • Ressources externes vĂ©rifiĂ©es (CDN, fonts, widgets)
  • Header CSP configurĂ©
  • Scan complet du site effectuĂ©

Questions Fréquentes

Le contenu mixte affecte-t-il le SEO ?

Indirectement oui. Google préfÚre les sites entiÚrement HTTPS. De plus, les ressources bloquées peuvent casser votre site et augmenter le taux de rebond.

Puis-je ignorer les avertissements de contenu mixte ?

Non recommandĂ©. Les navigateurs bloquent de plus en plus de contenu mixte. Ce qui fonctionne aujourd'hui peut ĂȘtre bloquĂ© demain.

Comment corriger le contenu mixte dans WordPress ?

Utilisez un plugin comme Better Search Replace pour remplacer http:// par https:// dans la base de données. Vérifiez aussi le thÚme et les plugins.

Que faire si une ressource externe n'est pas disponible en HTTPS ?

Hébergez la ressource localement sur votre serveur, ou trouvez une alternative disponible en HTTPS.

Le contenu mixte passif est-il dangereux ?

Le contenu passif (images) est moins dangereux que l'actif (scripts) mais compromet tout de mĂȘme la confidentialitĂ© et l'intĂ©gritĂ© de votre page.

MoniTao détecte-t-il le contenu mixte ?

MoniTao surveille la validité du certificat SSL. Pour le contenu mixte, utilisez des outils spécialisés comme whynopadlock.com.

Éliminez le Contenu Mixte

Le contenu mixte est un problÚme courant lors des migrations vers HTTPS, mais il est entiÚrement corrigeable. Prenez le temps d'auditer votre site et de corriger toutes les références HTTP.

Combinez la surveillance SSL de MoniTao avec des audits réguliers de contenu mixte pour garantir que votre site reste entiÚrement sécurisé.

PrĂȘt Ă  dormir sur vos deux oreilles ?

Commencez gratuitement, sans carte bancaire.