Après une coupure internet d'une petite quinzaine de jours (merci Free, au revoir Free), c'est officiel, idolum est à nouveau actif. J'en profite pour passer à la version 2 de Dotclear. Pour pas tout faire en même temps, j'ai récupéré le thème par défaut. Exit le thème orange, il reviendra quand j'aurai le temps.

Il y a encore des problèmes d'adresses: http://idolum.info/dotclear2/fabien/index.php/ devrait être http://idolum.info/fabien/

Vraisemblablement, aucune des images insérées dans le billets précédents ne sera correctement liées. Pareil, au fur et à mesure.

Alors pourquoi ce passage ? La version 2 de Dotclear est un multiblog, ce qui permet de gérer la partie d'Elise et la mienne via une seule interface. Ca me simplifie la tâche, en particulier pour la gestion des thèmes. De plus, récement j'étais submergé par des messages de spam. Dans la version 2, il y a un antispam intégré, on va voir ce qu'il vaut.

Dans l'immédiat, je m'attaque au problème de gestion des adresses.

Edit: Voilà, les règles sont modifiées:

AddType x-mapp-php5 .php

#Activation
RewriteEngine On

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^fabien/(.*) dotclear2/fabien/index.php/$1
RewriteRule ^elise/(.*) dotclear2/elise/index.php/$1

La 1ère, c'est pour utiliser du PHP5 (obligatoire pour DC2). Ensuite on indique qu'on utilise la ré-écriture d'adresses. Deux conditions successives: le fichier demandé n'est ni un répertoire ni un fichier (il n'existe pas). Alors on applique les règles de ré-écriture:

  • si l'adresse demandée commence par fabien/ alors on remplace fabien/ par dotclear2/fabien/index.php/
  • pareil pour elise/

La syntaxe utilisée est la syntaxe des REGEXP (regular expressions), qu'on retrouve dans sed, vi, le PERL ...

  • ^ : début de ligne
  • . : n'importe quel caractère
  • * : l'occurence précédente a lieu 0 ou plusieurs fois
  • ( ) : regroupement
  • $1 : contenu du regroupement

Traduction :
^fabien/(.*) : au début de la ligne
^fabien/(.*) : on trouve fabien/
^fabien/(.*) : et des caractères après, que l'on met dans $1

Facile !