Paramétrer les permaliens de WordPress pour améliorer son référencement

Paramétrer les permaliens de WordPress pour améliorer son référencement
19 janvier 2013 5 Comments WordPress Renaud M.G.

La mise en place du blog se poursuit et maintenant que les pages sont présentables il est temps de faire en sorte qu’elles soient correctement référencées.

WordPress intègre un système d’url rewriting prêt à l’emploi qui permet d’avoir des urls optimisées pour vos articles : au lieu de http://www.responsive-mind.fr/?p=123 on obtient par exemple http://www.responsive-mind.fr/mon-article. L’avantage de ce type d’adresses est évident pour un internaute (c’est bien plus simple à mémoriser, communiquer…) mais le fait que l’adresse d’une page contienne des mots clés (pertinents) est un règle de base dans le SEO. En effet tarte-aux-cerises.html sera mieux référencée que page123.html à contenu égal.

Dans cet article nous allons voir comment paramétrer WordPress pour obtenir des permaliens qui aident au référencement. Mais comme tout n’est pas toujours si simple, nous verrons aussi comment s’assurer que la réécriture d’url est bien activée sur un serveur Apache sous Ubuntu et enfin comment paramétrer son virtual host (toujours sous Ubuntu) si ça ne fonctionne toujours pas.

Paramétrage de WordPress pour avoir des urls pertinentes

Comme je l’ai dit plus haut, WordPress propose de façon native la réécriture d’urls que vous pouvez configurer dans le backoffice, section Réglages → Permaliens.

Wordpress offre un outil de paramétrage des permaliens en un click

WordPress offre un outil de paramétrage des permaliens en un click

Grâce à cet outil vous pouvez opter pour une des configurations prédéfinies ou choisir une structure de nom personnalisée (vous trouverez toutes les structures possibles ici).

En validant votre sélection le fichier .htaccess de votre site sera reconfiguré pour mettre en place l’url rewriting. Si WordPress n’a pas accès en écriture à ce fichier il vous donnera le code à copier/coller vous-même, il vous suffira alors d’éditer vous même votre .htaccess.

Configuration de l’url rewriting sur un serveur Apache : activer le module mod_rewrite

Edition du fichier de configuration d'Apache pour activer le module rewrite

Edition du fichier de configuration d’Apache pour activer le module rewrite

Normalement vous avez terminé et les permaliens fonctionnent sans aucun soucis. Mais il est possible que la réécriture d’url ne soit pas activée sur votre serveur, si les liens de votre site WordPress vous amènent tous vers des pages introuvables, c’est certainement le cas.

Ce chapitre concerne la configuration d’un serveur sous Ubuntu, mais mis à part le nom du fichier de configuration, il s’applique à tous les serveurs Apache.

Premièrement il convient de vérifier que le module mod_rewrite est bien “pré installé”, pour cela vérifiez que le fichier mod_rewrite.so se trouve bien dans le dossier contenant les modules d’Apache, grâce à la commande

ls -l /usr/lib/apache2/modules/

Il faut maintenant créer un lien logique entre le module rewrite et le dossier où se trouvent les modules disponibles pour Apache ( /etc/apache2/mods-available/ ) :

sudo a2enmod rewrite

Il ne reste plus qu’à éditer le fichier de configuration d’Apache, /etc/apache2/apache2.conf sous Ubuntu, /etc/apache2/httpd.conf sur un serveur standard. La commande ci-dessous utilise vi comme éditeur de texte, mais vous pouvez bien entendu utiliser gedit, nano ou n’importe quel autre outil de votre choix :

sudo vi /etc/apache2/apache2.conf

pour y forcer l’activation du module en insérant les lignes suivantes à la fin du fichier :

<ifModule mod_rewrite.c>
    RewriteEngine On
</ifModule>

Redémarrez votre serveur Apache et le tour doit être joué

Configuration du virtual host pour permettre l’url rewriting

Normalement tout fonctionne normalement mais il reste parfois un dernier piège à déjouer : le virtual host qui héberge votre site n’autorise pas la réécriture d’url. Pour remédier à cela il suffit d’éditer son fichier de configuration, dans le répertoire /etc/apache2/sites-enabled :

sudo vi /etc/apache2/sites-enabled/000-default

Si la directive AllowOverride est à “None”, il faut la changer pour “All”

<VirtualHost *:80>
  DocumentRoot /var/www
  <Directory />
    Options FollowSymLinks
    AllowOverride All
  </Directory>
...

Redémarrez encore une fois votre serveur Apache et cette fois ça devrait fonctionner.

Une situation exceptionnelle

La combinaison de ces deux problèmes reste pour moi exceptionnelle, mais elle se rencontre quand même, notamment sur un serveur Ubuntu “brut de décoffrage”. Sur des hébergements mutualisés, ou même des serveurs dédiés avec des distributions spécialisées, je n’ai jamais eu à effectuer autant de manipulations pour paramétrer les permaliens d’un site WordPress. Et vous ? avez-vous souvent rencontré ce cas de figure ? Avez-vous rencontré d’autres difficultés de mise en place ? N’hésitez pas à partager votre expérience dans les commentaires.

A propos de l'auteur
Leave Comment
  1. 1

    FredEnStage

    Salut je fais un blog interne dans mon stage en entreprise et j’arrive pas à faire marcher les permaliens avec un serveur windows, j’ai des erreurs 404 tout le temps, tu peux m’aider ?

  2. 1

    Renaud M.G.

    Bonjour FredEnStage, as-tu bien suivi ce tutoriel ?
    Peux-tu nous donner des informations sur ton serveur : est-ce un serveur IIS ou bien un serveur Apache ? S’agit-il d’un package clé en main comme EasyPHP ou Wamp ?

  3. 1

    Tutoriel : Transférer un blog WordPress | Responsive Mind

    […] vous souhaitez avoir une redirection efficace, paramétrez vos permaliens sur la nouvelle plateforme de la même façon qu’ils l’étaient sur […]

  4. 1

    stef

    merci bravo parfait : claire net & précis 😉

  5. 1

    pierre

    bravo ton article m’a aidé !
    en effet le “rewrite al”l etait à “none”… grrrr
    :))

Leave a reply

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