Accueil » Conseils & tutoriels sites internet » Tutos référencement - SEO » Joomla : passer son site vers https (SSL)

Joomla : passer son site vers https (SSL)

Un site Joomla n’est pas exempt de passage vers le protocole SSL, à savoir le HTTPS que vous pouvez voir dans la barre d’URL de cet article. Depuis à présent un moment, les moteurs de recherche et les normes de sécurité demandent à disposer du précieux sésame, fourni gratuitement par énormément de moteurs de recherche.

Nous avions vu comment mettre en place le HTTPS sous WordPress dans ce tutoriel, comment passer une boutique Prestashop sous le certificat SSL, voyons à présent dans le cadre d’un site Joomla. Pour ce tutoriel, j’utiliserai une version 3.9 de Joomla, mais l’opération varie peu selon les versions. Pensez cependant à bien conserver votre site à jour.

Il est dommage que ce CMS ne soit pas plus populaire, tant son utilisation se révèle d’une grande rigueur face à d’autres outils. La communauté Joomla est pourtant très compétente et sérieuse, là où je reprocherai à des CMS plus populaires d’être envahi de demandes incohérentes et de professionnels qui ne le sont pas réellement…

N’oubliez pas qu’un certificat SSL est gratuit avec Let’s Encrypt, et que vous ne devriez payer un certificat qu’à partir du moment où la perte du HTTPS sur votre site engendre une perte considérable en terme de chiffre d’affaire, ce qui sous-entend peut-être que vous utilisez une extension e-commerce comme VirtueMart. Je ne parlerai ici que de Joomla, sans considération de magasin en ligne, car il va de soi que je privilégie pour cela WooCommerce, Magento ou Prestashop, bien plus fiables pour cela.

Correction de la configuration de Joomla

Connectez-vous à votre site Joomla. Sur le tableau de bord, vous disposez d’un menu de gestion sur la gauche, fournissant quelques liens utiles. Celui qui nous intéresse est « Configuration ». Cliquez dessus.

Configuration Joomla

C’est ici que se trouvent les réglages les plus sensibles de votre site Joomla. Vous trouverez notamment des informations comme le nom du site, et la gestion SEO et URL.

Sur la page en question, cliquez sur l’onglet « Serveur ». En effet, un certificat SSL est délivré par un serveur, c’est donc par ce biais que nous allons l’activer sur Joomla.

Paramètres du serveur Joomla - forcer SSL

Notez au passage la compression Gzip qui permet d’accélérer la vitesse de chargement de vos pages. Le menu déroulant « Forcer le SSL » est celui qui nous intéresse. Nous allons sécuriser l’ensemble du site Joomla, qu’il s’agisse de l’administration ou du site en lui-même (du front-office).

Paramètres du serveur Joomla forcer SSL

Le bouton en haut à gauche vous permettra d’enregistrer vos réglages de HTTPS / SSL. Si un message de connexion non sécurisée s’affiche, contactez votre hébergeur, il y a de fortes chances que votre certificat SSL ne soit pas bon, ou pas en place.

Correction des liens en base de données Joomla

Comme j’imagine que vous avez correctement travaillé le référencement naturel de votre site Joomla, et qu’en conséquence vous avez travaillé votre maillage interne, il va falloir corriger tous les liens de votre site. Vous pouvez bien évidemment corriger ces liens de contenu depuis l’administration de votre site, mais nous sommes bien plus malins que cela, nous allons tout corriger d’un coup depuis la base de données.

Le principe est le même que lorsque vous désirez passer votre Prestashop en HTTPS avec un certificat SSL, ou votre site WordPress en HTTPS. Les tables en revanche – cela va de soi – sont différentes. Voici la requête :

UPDATE PREFIX_content SET introtext = REPLACE(introtext, 'https://www.MonAncienneURL.tld', 'https://www.MaNouvelleURL.tld') WHERE INSTR(introtext, 'https://www.MonAncienneURL.tld') > 0;

UPDATE PREFIX_content SET fulltext = REPLACE(fulltext, 'https://www.MonAncienneURL.tld', 'https://www.MaNouvelleURL.tld') WHERE INSTR(fulltext, 'https://www.MonAncienneURL.tld') > 0;

Bien évidemment, pensez à remplacer le préfixe des tables par le vôtre, et modifiez les URL indiquées par celles correspondant à votre Joomla. Vous pouvez également vous contenter de rechercher http:// pour remplacer par https://, ce qui donnerait les requêtes suivantes :

UPDATE PREFIX_content SET introtext = REPLACE(introtext, 'https://', 'https://') WHERE INSTR(introtext, 'https://') > 0;

UPDATE PREFIX_content SET fulltext = REPLACE(fulltext, 'https://', 'https://') WHERE INSTR(fulltext, 'https://') > 0;

Et de la sorte, vous corrigerez jusqu’aux liens externes qui ne seraient pas sécurisés (attention aux iframes, quoi que si celles-ci ne sont pas sécurisées, ce n’est pas un mal de les retirer pour de bon).

Modification du fichier htaccess de Joomla

Cette étape est la plus sensible, car le langage Apache utilisé dans ce type de fichiers ne pardonne pas les erreurs. Pensez donc à pouvoir revenir en arrière en sauvegardant le fichier initial.

Il va falloir réaliser une redirection 301 des pages HTTP vers HTTPS. Attention, ce type de redirection vous fera perdre tous les likes Facebook que vous auriez potentiellement acquis, mais parlons d’un « mal pour un bien ».

Connectez-vous à votre FTP. Ajoutez ceci tout de suite après « RewriteEngine On » dans le fichier htaccess :

RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Sauvegardez et allez tester une URL sur votre Joomla, en essayant d’y accéder sans le certificat SSL, donc une URL en HTTP et non HTTPS. La redirection devrait être immédiate.

Imprimer Imprimer
Suivre Cyssoo:

Développeur - formateur

Je cherche à display errors le monde, vous auriez pas la doc' ? Follow me on Twitter !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.