J'ai supprimer le index.php de l'url sur ce blog Dotclear 2 avec les rewrites rules d'apache
Par Charles-Christian Croix le lundi, mars 16 2009, 12:18 - Technologic - Lien permanent
Simplement en suivant les conseils de Jean-Christophe Duvivier
J'ai configuré mon blog DC2 comme ceci
- Panneau d'administration > Paramètres du Blog :
- URL du Blog : L'url complète de votre blog (en ce qui me concerne : http://www.karlesnine.com/)
- Méthode de lecture de l'url : Sélectionnez PATH_INFO
- Enregistrez
J'ai évité d'utiliser le .htaccess et j'ai directement porté mes RewriteRule dans la vhost de mon apache 2 comme ceci :
<VirtualHost *:80> ServerName www.karlesnine.com ServerAlias karlesnine.com DocumentRoot /var/www/karlesnine.com ErrorLog /var/log/apache/error.log CustomLog /var/log/apache/access.log combined # DirectoryIndex index.php RewriteEngine On RewriteLog "/var/log/apache/rewrite.log" RewriteLogLevel 0 # Special spam commentaire .ru .china .jp RewriteCond %{REMOTE_ADDR} ^81\.177\.14\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^81\.177\.15\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^121\.14\.75\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^210\.159\.140\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^210\.136\.18\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^59\.157\.220\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^59\.156\.227\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^222\.229.\216\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^203\.141\.129\.[0-255] [OR] RewriteCond %{REMOTE_ADDR} ^59\.157\.220\. RewriteRule .* - [F,L] RewriteCond %{REQUEST_URI} !^(/admin/|/cache/|/db/|/images/|/inc/|locales/|/plugins/) RewriteCond %{REQUEST_URI} !^(/favicon.ico/|/icons/|/local/|/dotclear/|/themes/|/public/) RewriteCond %{REQUEST_URI} !^/index.php RewriteRule (.*)$ /index.php/$1 </VirtualHost>
J'ai découpe la ligne de RewriteCond en deux pour une question de lecture. J'ai ajouter quelque condition entre autre sur favicon.ico qui malgré le plugin myfavicon n'apparaissait pas.