Dans mon précédent article, je vous présentais les quelques changements survenus sur Akril.net à savoir mon changement de domaine ainsi que le passage en https.
Je vous propose dans cet article de partager la démarche et les différentes actions que j’ai réalisé pour effectuer ces changements tout en essayant de minimiser l’indisponibilité du blog.
Bien sûr, je ne prétends pas que les éléments que je vais décrire sont « LA solution » mais elle a fonctionné pour moi. Adaptez donc en fonction de vos besoins ! 🙂
Etape 1 – Préparation de la transition & changement de l’URL
Au sein de mon hébergement (ou serveur dédié), j’ai créé 2 dossiers. L’un permet d’afficher le site blog.akril.net (ancien) et l’autre me permet d’afficher le site actuel https://akril.net (nouveau). Au niveau du contenu, j’ai simplement effectuer une copie complète du dossier WordPress. N’oubliez pas de modifier les DNS pour qu’ils pointent bien sur les différents dossiers.
Même chose pour la base de données SQL – j’ai copié l’ancienne que et j’en ai fait une copie pour la nouvelle version du site.
De cette façon, j’ai pu procéder aux changements et tests sur la nouvelle copie sans impacter l’affichage classique du site actuel.
Sur la nouvelle version du site, j’ai ensuite pu modifier l’URL dans les paramètres WordPress afin qu’ils soient associés à la nouvelle URL. Dans certains cas il est possible que vous ne puissiez pas accéder au portail admin de WordPress avec la nouvelle URL dans ce cas vous devrez réaliser cette correction dans la base de données ou bien en définissant temporairement ces 2 paramètres dans le fichier wp-config.php de votre installation WordPress :
define('WP_HOME','https://nouvelle-url.net'); define('WP_SITEURL','https://nouvelle-url.net');
Plus d’informations en consultant ce lien.
Une fois ce changement effectué, vous disposez à cet instant de 2 sites parfaitement identiques mais complètement indépendants. Ils disposent de leur propre portail admin WordPress ainsi qu’une base de données SQL qui leur est propre.
Etape 2 – Ajout d’un certificat SSL
Comme vu précédemment, j’ai passé le site en https. Je dois donc maintenant lui associer un certificat SSL. Si vous disposez de votre propre serveur dédié ou VM, vous pouvez opter pour un certificat gratuit du type Let’s Encrypt.
Si vous disposez d’un hébergement mutualisé ou administré par un info-géreur, il est fort probable que vous ayez un certificat SSL gratuit ou qui peut être activé facilement en quelques clics directement depuis un panneau d’administration tel que cPanel.
Plus d’informations en consultant cet article.
Par exemple dans le cas d’un hébergement 1&1, vous pourrez facilement ajouter un certificat SSL à n’importe quelle URL. En fonction de votre hébergement, vous disposerez d’ailleurs un certificat gratuit.
A la fin de cette étape, vous disposez de 2 sites dont votre nouveau site avec son nouveau domaine configuré en https.
N’oubliez pas de configurer un fichier .htaccess pour rediriger l’ensemble du trafic standard http vers l’URL sécurisée en https.
Plus d’informations en consultant ce lien.
Etape 3 – Nettoyage de la base de données (facultatif)
Selon l’utilisation que vous faîtes de WordPress et en fonction des différents liens que vous avez créé au cours de son utilisation, il est recommandé de procéder au nettoyage de votre base de données SQL afin de changer toutes les occurrences d’URL du type http://ancienne-url.net vers le nouvelle URL : https://nouvelle-url.net.
Pour ce faire, plusieurs façons de procéder, vous pouvez utiliser un plugin WordPress. Je vous recommande les 2 suivants :
Le principe c’est que vous indiquez l’ancienne URL et la nouvelle et le plugin se charge de corriger toutes les occurrences dans les différentes tables de votre base de données. Attention, certains plugins ne procéderont pas à tous les changements et proposent et se déclinent en version payante.
Vous pouvez également procéder à ce changement en exportant la base de données SQL et en l’ouvrant dans un éditeur de texte tel que NotePad++. Il ne vous reste alors qu’à faire un Rechercher + Remplacer pour changer toutes les occurrences de http://blog.akril.net en https://akril.net (dans mon cas).
Cette correction vous permettra de vous assurer qu’aucun de vos liens ne soient cassés durant ce changement.
Etape 4 – Création d’un fichier .htaccess
Il vous faut ensuite créer un fichier htaccess.
Positionné à la racine du dossier contenant l’ancien site (en supprimant tout le reste), il va nous permettre de rediriger toutes les anciennes URLs vers les nouvelles URLs.
<IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^(.*)$ https://nouvelle-url.net/$1 [R=301,L] </IfModule>
Cela vous permettra de rediriger l’ensemble des anciennes URL de tous les articles, fichiers médias et autres pièces jointes de l’ancien site vers le nouveau site. Et nous ajouterons la référence 301 pour indiquer aux moteurs de recherches qu’ils s’agit d’une redirection de type permanente (dans le dossier concernant la copie de l’ancien site).
Désormais, toutes les URLs du type http://ancienne-url.net/article seront automatiquement redirigées vers le nouveau site : https://nouvelle-url.net/article.
Etape 5 – Mise à jour des services associés
Il nous reste maintenant à modifier et/ou informer tous les services associés que vous pourriez utiliser que votre site a changé d’URL. Je pense notamment aux services suivants :
Google AdSense : à priori, rien à changer en particulier. Si vous avez fait une copie de votre site, les publicités apparaîtront aux mêmes endroits.
Google Analytics : pour ne pas perdre vos statistiques, pensez à changer votre ID de suivi (via l’extension MonsterInsights ou dans le code de votre site selon votre cas).
Google Webmaster Tools – ce point est particulièrement important : c’est ce qui permet d’informer Google du changement d’adresse de votre site. Pour ce faire la démarche est simple, vous devez créer une entrée pour l’ancien site (que vous avez probablement déjà) ainsi qu’une entrée pour la nouvelle URL. Ensuite, cliquez sur l’actuel site et dans les options cliquez sur Changement d’URL pour démarrer la procédure de changement d’URL.
A l’heure ou j’écris cet article, cette dernière étape de changement d’URL est toujours en cours auprès de Google. C’est donc la page que je vois lorsque j’accède au Webmaster Tools pour le nouveau site.
Pour plus d’informations sur ce processus, je vous recommander de lire la documentation officielle de Google accessible à ces 2 adresses :
Enfin, il vous reste encore à modifier les différentes entrées DNS (CNAME, A) qui pointeraient sur l’ancien site pour les faire pointer vers le nouveau site si besoin (en fonction de votre configuration).
Etape 6 – Commentaires via Disqus (facultatif)
Etape à suivre si vous utilisez également Disqus.
Sur ce blog, les commentaires ne sont pas gérés directement par WordPress mais via le système Disqus (que je trouve très sympas). J’ai d’abord pensé qu’il n’y aurait rien à faire de particulier si ce n’était changer l’URL dans la configuration de Disqus. Mais en fait ce n’est pas aussi simple !
Les commentaires Disqus étant associés aux URLs – en changeant l’URL principale de votre blog vous allez perdre tout ou partie de vos commentaires. En vérité, ils ne sont pas perdus mais plus associés avec la bonne URL correspondant à l’article. Vous devrez donc migrer vos commentaires en changeant les URL de l’ancienne vers la nouvelle configuration. Pour ce faire, vous devrez utiliser la fonctionnalité URL Mapper de Disqus.
Même principe qu’avec la base de données SQL, l’outil URL Mapper va vous exporter un CSV et il vous suffit de mettre à jour les anciennes URLs vers les nouvelles versions.
Vous trouverez tous les détails en suivant ces liens :
Etape 7 – Corriger l’erreur « this page includes script from unauthenticated sources«
Lors de votre passage en https, vous pourriez être confronté à cette erreur lorsque votre site s’affiche dans Chrome (et j’imagine que c’est la même chose sur Firefox).
C’est simplement que votre passage en https n’est pas uniforme et que certains scripts javascript ou autres fichiers sont appelés avec des URL en http alors que le reste de votre site est sécurisé en https.
Les navigateurs Internet associent cela a une anomalie et affichent une alertes aux utilisateurs (Google Chrome, Mozilla Firefox).
Pour corriger automatiquement ce phénomène, vous pouvez utiliser le plugin WordPress suivant :
- Really Simple SSL : ce plugin est gratuit et il vous suffira de l’exécuter une fois pour résoudre le problème (en tout cas cela a été suffisant pour moi).
Plus d’information sur l’article suivant.
Et après ?
Et bien, l’étape finale consiste vérifier dans les semaines à venir que :
- vos revenus n’ont pas baissés sur Google AdSense ;
- vous n’avez pas de diminution étrange de vos statistiques dans Google Analytics ;
- et que votre site ne renvoi pas d’erreurs 404 suite à des pages qui ne seraient pas correctement redirigées (à voir depuis Google Webmaster Tools).
Si vous aussi, vous avez effectuer ce type de changement pour votre site, n’hésitez pas à partager votre retour d’expérience dans les commentaires ! 🙂