J'utilise des permaliens année/mois/après nom, ainsi que le plugin download-monitor pour gérer les téléchargements de fichiers. J'ai ajouté des règles de réécriture en haut du fichier .htaccess en suivant les instructions de Perisshable Press .
Je viens de faire la même chose sur un autre blog et cela a bien fonctionné. Les seules différences sont que le blog n’a pas utilisé le moniteur de téléchargement et que l’installation a eu lieu à la racine du domaine, au lieu d’un sous-répertoire /blog/
.
Si je commente cette ligne:
RewriteCond %{REQUEST_URI} ^/?feed.* [NC]
Ça marche. Je suis simplement curieux de savoir pourquoi cette ligne figurerait-elle dans les instructions si elle ne fonctionne pas? Cela a-t-il quelque chose à voir avec le sous-répertoire?
. htaccess:
# temp redirect all wordpress feeds to feedburner
# from http://perishablepress.com/press/2008/03/25/redirect-wordpress-feeds-to-feedburner-via-htaccess-redux/
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /blog/
RewriteCond %{REQUEST_URI} ^/?feed.* [NC]
RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
RewriteRule ^feed/?.*$ http://feeds.feedburner.com/mysite [L,NC,R=302]
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /blog/
RewriteRule ^download/([^/]+)$ http://www.mysite.com/blog/wp-content/plugins/download-monitor/download.php?id=$1 [L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
Essaye ça. Ce format fonctionne pour moi. Il n'est pas nécessaire de répéter continuellement IfModule, RewriteEngine, RewriteBase.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
RewriteRule ^feed/?.*$ http://feeds.feedburner.com/mysite [L,NC,R=302]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
RewriteRule ^download/([^/]+)$ http://www.mysite.com/blog/wp-content/plugins/download-monitor/download.php?id=$1 [L]
</IfModule>
# END WordPress
Voici un tutoriel intéressant pour htaccess: http://codeigniter.com/wiki/mod_rewrite/
Et si vous continuez à avoir des problèmes, envisagez peut-être d'utiliser un plugin: http://wordpress.org/extend/plugins/tentbloggers-feedburner-rss-redirect-plugin/screenshots/