dotclear2 & mod_rewrite
Par Grumpf le mardi, septembre 11 2007, 11:11 - geekage - Lien permanent
les url formats monhost/monblog/monindex.php?post/date/etc/monpost ne sont pas tres belles.
voila comment j'ai fait pour avoir un monhost/post/date/etc/monpost
pour cela on utilise mod_rewrite d'apache (qui permet de faire de la réécriture d'url a la volée)
j'ai fait l'install à la racine de www.grumpf.net, jusque la dotclear était configuré en url : http://www.grumpf.net/? & Méthode QUERY_STRING
dans dotclear2 on laisse le Méthode QUERY_STRING puisqu'on va réécrire les PATH en index.php?PATH, et on change l'url en http://www.grumpf.net (on supprime le ?)
le .htaccess placé a la racine
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/post.* [OR]
RewriteCond %{REQUEST_URI} ^/category.* [OR]
RewriteCond %{REQUEST_URI} ^/tag.* [OR]
RewriteCond %{REQUEST_URI} ^/feed.*
RewriteRule (.*)$ index.php?$1 [L]
pour toutes les requettes qui commence par /post, /category, /tag, /feed on réécrit , pour le reste on laisse l'accès direct (images / gallery / etc), le (.*) devient la variable $1 qu'on passe en paramétres de la page index.php
[11/Sep/2007:10:45:51 +0200] [www.grumpf.net/sid#812a5b8][rid#829c960/initial] (2) [per-dir /var/www/localhost/htdocs/] rewrite post/2007/09/10/Quand-Hotmail-prend-ces-utilisateurs-pour-des-billes -> index.php?post/2007/09/10/Quand-Hotmail-prend-ces-utilisateurs-pour-des-billes [11/Sep/2007:10:45:51 +0200] [www.grumpf.net/sid#812a5b8][rid#82a29d8/initial] (2) [per-dir /var/www/localhost/htdocs/] rewrite tag/linux -> index.php?tag/linux
un grand merci a mon pote google, ainsi qu'à la doc et au debug apache.
RewriteLog /var/log/apache2/rewrite.log RewriteLogLevel 3