Dotclear, URL rewriting et LightTPD

Quelques jours après son passage sur un serveur LightTPD, je viens d’activer la redirection d’URL sur ce blog pour obtenir des adresses du type http://apassant.net/blog/2006/01 à la place de http://apassant.net/blog/index.php/2006/01.

La réécriture est aussi simple que sous Apache, par contre il n’est pas encore possible d’utiliser des fichiers locaux à la .htaccess pour définir les règles, il faut donc les écrire dans le fichier de configuration du serveur. Par super pratique en cas de renommage d’un répertoire, meme si on s’en sort avec un petit coup de sed.

Voilà donc les règles utilisées pour passer d’un dotclear classique en PATH_INFO à ce type d’URL sous LightTPD. Si vous êtes sous Apache, vous pouvez consulter ce tutoriel. Dans le cas des redirections de ce site, la seule chose à changer est l’URL du blog dans l’interface de configuration (i.e. ici, rempacer /blog/index.php par /blog/):

 url.rewrite = (   # permaliens   "^/blog/[0-9]{4}/[0-9]{2}/?$" => "/blog/index.php/$1/$2",   "^/blog/[0-9]{4}/[0-9]{2}/[0-9]{2}/?$"     => "/blog/index.php/$1/$2/$3",   "^/blog/[0-9]{4}/[0-9]{2}/[0-9]{2}/(.+)$"     => "/blog/index.php/$1/$2/$3/$4",   # categories   "^/blog/([A-Z][A-Za-z0-9_-]*)/?$" => "/blog/index.php/$1",   "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/?$"     => "/blog/index.php/$1/$2",   "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/[0-9]{2}/?$"     => "/blog/index.php/$1/$2/$3",   "^/blog/([A-Z][A-Za-z0-9_-]*)/[0-9]{4}/[0-9]{2}/[0-9]{2}/?$"     => "/blog/index.php/$1/$2/$3/$4",   # langues   "^/blog/([a-z]{2}(-[a-z]{2})?)$" => "blog/index.php/lang=$1",   # admin   "^/blog/ecrire/(.+)?$" => "blog/ecrire/$1",   # tags   "^/blog/tag/(.+)?$" => "blog/index.php/tag/$1", )

Ca tourne correctement, même si pour le moment je n’ai pas réussi à garder la compatibilité avec les anciens permaliens :-/ Par contre j’ai toujours ce bug étrange avec le tagcloud.

Bref, on verra plus tard, on passe à autre chose pour ce soir. (dormir en fait je crois :-)

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s