Comment changer les URL d'image de HTTP en HTTPS dans WordPress

Récemment, j'ai déplacé ce site Web vers HTTPS / SSL qui est hébergé sur le CMS WordPress. La migration de HTTP vers HTTPS s'est bien déroulée et la redirection permanente vers HTTPS a également réussi. Peu de temps après la propagation, les pages HTTP redirigeaient vers leurs équivalents HTTPS et affichaient un signe de cadenas vert. Le seul problème était que la plupart des pages HTTPS affichaient des avertissements de contenu mixte.

En raison de ces avertissements, les pages n'affichent pas de balise sécurisée aka cadenas et disent à la place que "Votre connexion à ce site n'est pas entièrement sécurisée" ou "Cette connexion n'est pas privée".

Ce problème survient lorsque les ressources de la page sont liées à des URL HTTP au lieu de HTTPS, les qualifiant ainsi d'élément non sécurisé. L'avertissement de contenu mixte est généralement causé par des images ajoutées sur des pages qui se chargent toujours avec l'URL HTTP. Ce problème ne provient pas de la configuration SSL elle-même et doit être résolu dans le cadre du processus de migration vers HTTPS.

J'ai recherché intensément dans de nombreuses sources pour trouver un moyen précis de mettre à jour les liens d'image de HTTP vers HTTPS après la migration SSL dans WordPress. Cependant, je n'ai pas pu trouver un seul guide qui pourrait aider un débutant à accomplir cette tâche technique avec facilité. Après de nombreuses réflexions et de nombreux articles, j'ai finalement trouvé une solution simple pour corriger les erreurs non sécurisées sur les pages HTTPS.

Guide de mise à jour des images vers HTTPS dans WordPress

Je vais garder ce guide simple et direct afin que les débutants ne soient pas confus comme moi.

Nous utiliserons "Meilleure recherche Remplacer” plugin pour WordPress qui contient les meilleures fonctionnalités trouvées dans des plugins similaires. Vous pouvez effectuer toute cette tâche sans vous connecter à phpMyAdmin pour exécuter des requêtes SQL qui pourraient gâcher votre site en cas de problème.

Avant de continuer, notez que ce tutoriel s'applique aux utilisateurs de WordPress qui ont défini un redirection 301 et n'utilisent que le protocole HTTPS sur leur site Web ou leur blog. Bien que cela fonctionne dans la plupart des scénarios, il faut également prendre en compte d'autres facteurs si le problème persiste.

1. Changez l'URL d'accueil et du site WordPress en HTTPS

Accédez à votre tableau de bord WordPress > Paramètres > Général. Modifiez maintenant l'adresse WordPress et l'URL de l'adresse du site en HTTPS au lieu de HTTP. (Voir image)

Cela oblige WordPress lui-même à gérer la redirection. De plus, tous les liens internes de l'application et du site Web WordPress seront définis sur leurs équivalents HTTPS. Cela indiquerait que chaque partie du site Web est et mène à un contenu crypté. Juste pour être sûr, vous pouvez ajouter la règle ci-dessous à votre fichier .htaccess.

Moteur de réécriture activé

RewriteCond %{HTTP:X-Forwarded-SSL} !on

RewriteRule ^(.*)$ //%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Cette redirection 301 s'assurera de rediriger toute requête HTTP vers HTTPS.

2. Modifiez les ressources multimédias (images, liens internes) de HTTP à HTTPS

Venir à l'étape principale. Vous devez maintenant remplacer toutes les anciennes URL HTTP de la base de données WordPress par HTTPS. Cela signifie mettre à jour tous les liens de fichiers image et les liens internes ajoutés manuellement (dans les articles ou les pages) vers HTTPS afin d'éviter tout avertissement d'image non sécurisé et de corriger l'erreur de contenu mixte. Cependant, il n'est pas nécessaire de mettre à jour les liens externes pointant vers d'autres sites Web vers HTTPS.

AVERTISSEMENT: Assurez-vous d'abord de sauvegarder votre base de données.

Remplacez HTTP en HTTPS par Beter Search Replace Plugin

Pour continuer, installez le plugin WordPress « Better Search Replace » et activez-le.

Rendez-vous maintenant sur la page du plugin située dans la section Outils. Dans le champ "Rechercher", saisissez la version HTTP de l'URL de votre site Web et la version HTTPS dans le champ "Remplacer par". Sous les tableaux sélectionnés, faites défiler vers le bas et sélectionnez le "wp_posts” qui contient les URL des images et les URL intégrées dans les articles et les pages. Ensuite, décochez la case « Exécuter en tant qu'essai à sec ? » et appuyez sur le bouton Exécuter la recherche/remplacer.

Attendez que le traitement ait lieu. Vous pouvez ensuite afficher des détails tels que le nombre de modifications trouvées et de lignes mises à jour pour la table en particulier.

REMARQUE: Si vous obtenez une erreur pendant le traitement, accédez à l'onglet Paramètres et essayez de réduire la valeur "Taille maximale de la page" à n'importe où entre 8 000 et 10 000.

C'est ça! La version HTTP des liens intégrés et des URL d'images de votre site Web doit maintenant être mise à jour avec la version HTTPS.

Pour confirmer, ouvrez simplement un article de blog et copiez l'adresse de l'image dans un article ou affichez la source de la page. Les URL des images devraient maintenant afficher la version HTTPS et vous devriez maintenant voir un cadenas sécurisé à côté de la barre d'adresse.

Astuce bonus: Après avoir remplacé HTTP par HTTPS avec succès, vous pouvez supprimer le plug-in.

Découvrez pourquoi le site HTTPS n'affiche pas de cadenas vert

Notez que certaines pages avec des liens brisés ou indisponibles, tels que des CDN expirés, peuvent toujours entraîner un contenu mixte. Vous pouvez identifier les éléments non sécurisés sur ces pages en utilisant la fonction Inspecter les éléments dans Chrome ou simplement utiliser Whynopadlock.com pour trouver facilement les éléments non sécurisés sur vos pages SSL.

Référence : Consultez cet article détaillé de Michael Bely

Mots clés : BloggingTutorielsWordPress