ApacheLa majorité des outils de blog modernes viennent avec un système de permaliens soi-disant optimisés pour les moteurs de recherche permettant de retrouver un contenu dans une URL de manière relativement explicite.

À un schéma d’URL du type http://monsite.com/index.php?p=42 s’est substitué un schéma désormais plus classique du genre http://monsite.com/articles/année/mois/jour/titre-du-billet nettement plus explicite, aussi bien pour les lecteurs que pour les outils de recherche.

Pourtant, les URL par défaut ne sont pas toujours ni optimisées pour les moteurs de recherche, ni pour l’usage que l’on fait de son outil de publication. À moins de tenir un journal dans lequel la chronologie joue un rôle important, des URL du type /titre-du-billet seront beaucoup plus pertinentes, tout en étant plus optimisées pour les moteurs de recherche.

La majorité des blogware modernes à héberger soi-même disposent d’un système permettant de choisir son format d’URL. Si vous n’avez pas réfléchi au problème avant d’ouvrir votre blog, il vous faudra, une fois mis en place ce nouveau format, rediriger vos visiteurs des anciennes URL vers les nouvelles. Cela vous évitera non seulement pléthore d’erreurs 404, mais surtout, par là même, de perdre tout le bonus des liens pointant vers vos articles.

Je vous propose, afin d’éviter cela, quelques règles de réécriture Apache à destination des trois principaux outils de blog : Wordpress, Dotclear et Movable Type, dans leur schémas d’URL de base.

Les nouveaux schémas d’URL à mettre en place sur vos blogs sont :

  • Billets : /titre-du-billet
  • Catégorie : /categorie/titre-de-la-categorie
  • Tags : /tag/nom-du-tag

Des adaptations pourront être nécessaires ici et là.

Wordpress

Sous Wordpress, vous allez :

  • Supprimer le préfixe /articles.
  • Réécrire les URL des billets en supprimant le préfixe le timestamp.
RewriteRule ^/articles/(.*) /$1
RewriteRule ^/\d{4}/(?:0?[1-9]|1[012])/(?:0[1-9]|[12]\d|3[01])/(.*) /$1 [R=301,L]

Dotclear

Sous Dotclear, vous allez :

  • Supprimer l’omniprésent index.php (merci JS pour les indications sur le fonctionnement de Dotclear).
  • Supprimer le préfixe /post/ sur les billets.
RewriteRule ^/index.php/post/\d{4}/(?:0?[1-9]|1[012])/(?:0[1-9]|[12]\d|3[01])/(.*) /$1 [R=301]
RewriteRule ^(page|archive|feed|tag|category|sitemap\.xml)/(.*)$ /index.php/$1/$2 [L]
RewriteRule ^(archive|tags|sitemap\.xml) /index.php/$1 [L]
RewriteRule ^/(.*)$ /index.php/post/$1 [L]

Movable Type

Movable Type est ainsi fait qu’on ne pourra agir que sur les URL des billets, ce qui est déjà pas mal. N’ayant pas de Movable Type sous la main, je n’ai d’ailleurs pas pu vérifier que cela était possible. Cette réécriture est donc purement empirique.

RewriteRule ^/archives/\d{4}/(?:0?[1-9]|1[012])/(.*) /$1 [R=301,L]

Et voilà, that’s all folks comme on dit dans les cartoon de mon enfance. J’espère que ça vous aura été utile.

The evil butterly girl

Perry the Platypus wants you to subscribe now! Even if you don't visit my site on a regular basis, you can get the latest posts delivered to you for free via Email: