Apprenez à sécuriser votre site web WordPress en passant au tout https en utilisant le VPN Cloudflare et le fournisseur de certificat Let's encrypt.
Comme vous pouvez le constater, le site seeyar.fr est passé en https depuis peu ( http avec une surcouche TLS). Nous avons d'ailleurs réfléchi longuement avant de nous décider à faire le premier pas, voici quelques arguments:
- D'abord parce que nous pensions à tord que le fait de passer au tout https serait techniquement difficile et long à mettre en oeuvre. Ce fut au final loin d’être le cas pour notre plus grand bonheur mais cela a nécessité quelques investigations et recherche d'informations.
- Dans un deuxième temps, nous avions eu quelques réflexions par rapport au SEO et au référencement de nos liens. Le fait de passer en https nous faisait craindre des pénalités concernant le "duplicate content" (duplication de contenu). On trouve sur le net beaucoup de débats à ce sujet.
- Sécurité et protection de votre vie privé, voila ce qui nous a donné envie de relevé ce défi, aujourd’hui les gens sont de plus en plus méfiants, le cadenas vert renvoie une bonne image aux lecteurs d'un site, cela devient un gage de qualité.
Laissons place au tutoriel! Il y a 7 étapes à effectuer dans cet ordre, la dernière étape étant optionnelle.
1/ Let's Encrypt
Aujourd'hui quasiment tous les hébergeurs proposent l'installation en automatique d'un certificat Let's Encrypt. C'est le cas de notre hébergeur Evxonline qui le propose gratuitement pour tous les hébergement en mutualisés.
Exemple d'installation sous panel plesk:
2/ Activer le SSL sous Cloudflare
- Activer le ssl en full strict:
Paramétrez le ssl en full(strict)
- Descendez tout en bas, et activez la fonction Automatic HTTPS Rewrites, ce qui vous permettra de régler un grand nombre de problèmes de content mixed.
On parle de content mixed quand une page propose un mélange de contenu en http et en https, ce qui est a éviter totalement pour bénéficier du beau cadenas tout vert
3/ La redirection d'URL via votre .htaccess
Ouvrez filezilla et éditez votre fichier .htaccess, ajoutez ce code:
# Redirection vers HTTPS RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Ce qui permettra de rediriger vos pages en http vers https
4/ Le changement d'url depuis le panneau administration WordPress
Dans Réglages / Général
Remplacez http par https
5/ Passer le panneau d'administration wordpress en https
Avec filezilla, éditez le fichier config.php et ajoutez ce code en toute fin de fichier:
// Forcer le HTTPS dans l'administration define('FORCE_SSL_ADMIN', true);
6/Référencement des liens existants
Voici une astuce pour faire en sorte que les liens référencés en http soit redirigés vers leur consœur en https. Depuis le panel Cloudflare, nous allons ajouter une règle:
Sélectionnez Page rule
Forcez la redirection de tous les liens référencés en http vers https
7/ Etape final optionnelle et dangereuse
Si vous êtes arrivé jusqu'à cette 7ème étape, bravo! Vous avez un site qui devrait posséder le cadenas vert à quelques choses prêts....
Vous allez avoir un problème de mixed content par rapport à toute les images anciennement sauvegardées sur votre site. A l'ouverture de l'image votre jolie cadenas vert devrait repasser en gris. Vous l'aurez compris, il va falloir modifier la base de donnée.
- A ce propos, un script php qu'il faudra dézipper à la racine de votre site propose de réecrire toutes vos URL en http, en https. Liens:
DATABASE SEARCH AND REPLACE SCRIPT IN PHP
Nous avons testé la version 3.1 qui est compatible php 5.4 et 7.0
- Ensuite, depuis votre navigateur tapez sur la barre d'url :
nomdevotresiteweb/Search-Replace-DB-master
Vous devriez tomber sur cela:
Remplacez bien http://votresite.fr par https://votresite.fr
- Enfin lancez live-dry suivi de update details
- Et pour finir cliquez sur delete me pour supprimer le script ainsi que son dossier
Fin du tuto, Enjoy!