Poursuivons, poursuivons… Après le paramétrage du site et celui des métadonnées, continuons avec le paramétrage SEO. Et si vous avez loupé le début de cette notice, vous devez commencer par l’article Configurer son site Joomla (1ère partie).

Joomla! Paramétrage SEO - réécriture des urlsRéécriture des Urls

Par défaut, la réécriture d’Urls en clair (SEF = Search Engine Friendly) – ou si vous préférez les Urls lisibles – est activée.

L’adresse de la page Comment démarrer ? ressemble donc à cela : http://localhost/joomla/index.php/comment-demarrer (je suis sur un serveur local, donc localhost, puisque je suis en développement). Si vous êtes “en ligne” (ce que je vous déconseille en phase de développement), l’adresse ressemble à ).

Comme on peut lire facilement où se situe la page, on appelle ces adresses des Urls en clair. En “pas clair”, vous auriez .

C’est clair ?

Plaisanterie à part, la réécriture en clair des Urls est déjà un bon début, mais l’indication des fichiers php toujours présente n’est pas satisfaisant. Pour résoudre ce petit souci, il faudra activer aussi la Réécriture au vol des Urls lorsque votre site sera hébergé (en ligne). Et là, vous aurez une Url toute propre : http://localhost/joomla/comment-demarrer.  Joomla! utilise la fonction de réécriture des serveurs Web Apache pour éliminer la partie index.php, et c’est beaucoup plus agréable ! Mais, cela nécessite un petit investissement de votre part pour que cela fonctionne…

Problèmes possibles avec la réécriture au vol des Urls

Oups ! Y’a comme un p’tit problème avec l’activation de la réécriture au vol : la page affiche dorénavant le message : 404 – Not Found – The requested URL /joomla/comment-demarrer was not found on this server.

Le serveur ne trouve pas l’adresse de cette page. Bref, il ne reconnait pas la réécriture au vol. C’est le serveur Apache qui gère la réécriture au vol, donc si vous avez ce type de comportement, c’est que votre Apache n’a pas le module Apachemod_rewrite activé ou encore que votre hébergement ne tourne pas sous Apache (se renseignez auprès de votre hébergeur si la correction ci-dessous ne fonctionne pas).

Mais qu’est-ce qu’elle raconte ? Si vous n’avez pas compris un mot de ce que je viens d’expliquer, je ne vais pas rentrer plus dans les détails. Simplement, il faut retenir que sur le serveur qui gère votre site, une fonctionnalité n’est pas active. Et, la bonne nouvelle, c’est que vous pouvez l'”activer”.

Si vous êtes en local, laissez l’option Réécriture au vol des urls sur non. Je l’ai dit plus haut, cette ré-écriture se fait plus simplement lorsque le site est en ligne. Pourquoi ? Si votre ordinateur fonctionne sous Windows, ce dernier n’accepte pas ce type de nommage du fichier htaccess. Donc, même si vous modifiez votre fichier comme indiqué ci-dessous, cela ne fonctionnera pas : vous aurez toujours une erreur Server. Pour ceux qui s’entêtent, vous pouvez toujours essayer la commande DOS-prompt :

rename htaccess.txt .htaccess

Si votre site est en ligne, il vous faudra réaliser 2 opérations : renommer le fichier htaccess et insérer une partie de code dans ce fichier.

Autre problème possible : certains menus peuvent ne plus fonctionner, et des pages s’afficher en blanc.

Modifier le fichier htaccess

À l’aide d’un client FTP comme Filezilla, télécharger le fichier htaccess.txt et ouvrez-le avec un éditeur de texte comme Notepad++. Ajoutez le morceau de code (en rouge) dans le fichier, comme indiqué ci-dessous.

#
# @package    Joomla
# @copyright  Copyright (C) 2005 - 2014 Open Source Matters. All rights reserved.
# @license    GNU General Public License version 2 or later; see LICENSE.txt
##
SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0
##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#

La ligne SetEnv PHP_VER 5 force l’utilisation de PHP version 5.

Télécharger cette version du fichier en écrasant la précédente et renommez simplement le fichier en .htaccess.

Voilà, c’est prêt : il y a bien une réécriture de vos Urls… Si vous avez encore un problème, c’est que votre serveur peut ne pas fonctionner sous Apache. Renseignez-vous auprès de votre hébergeur.

Corriger le dysfonctionnement des menus

La réécriture des Urls peut provoquer des dysfonctionnements, et ce, surtout au niveau des menus qui porteraient des intitulés ou alias identiques, ou encore, identiques à des dossiers de l’administration : template, images, etc. Vous le saurez rapidement : pages blanches ou erreur seront au rendez-vous.

Si un menu n’est plus identifié (non reconnaissance de son numéro d’identification : supprimer le menu et recomposez-le entièrement. Si vous avez des conflits de nommage (intitulés identiques), renommez les pages, catégories, etc. qui posent problème.

Les autres paramétrages

  • Ajouter un suffixe aux Urls : si vous l’activez, Joomla ajoute .html à la fin de la plupart des Urls Les Urls ressemblent alors à www.example.com/index.php/commentdemarrrer.html ou www.example.com/commentdemarrer.html. Le réglage par défaut est “Non”.
  • Alias Unicode : par défaut, cette option est désactivée. Elle permet quand elle est active d’ajouter des caractères unicode (caractères spéciaux) dans les alias d’Urls. Je vous déconseille fortement de l’activer, sauf si vous savez ce que vous faites.
  • Nom du site dans les titres : cette option, lorsqu’elle est activée, ajoute le nom du site dans les titres de page dans la balise de chaque en-tête de la page Web. Vous pouvez choisir de le mettre avant ou après le titre. Si vous l’activez, et à moins d’une stratégie contraire, je vous conseille de positionner le nom du site après l’intitulé de la page.
  • Pour les cookies, laissez vide. Leur utilisation est très particulière et est intéressante lorsque vous gérez des sous-domaines. Vous pourrez un jour vous penchez dessus lorsque vous maîtriserez Joomla!.