
Pour mesurer l’utilisation des flux RSS d’Emu Nova, j’ai décidé d’utiliser Feedburner dans sa version gratuite. Je l’utilise déjà pour ce blog et j’en suis très satisfait, que ce soit pour les données fournies, les personnalisations possibles ou encore la qualité du service.
La problématique du jour : comment utiliser Feedburner sur des flux RSS déjà existants ? Le changement doit être transparent pour les utilisateurs.
Créer son flux Feedburner
Avant de faire quoi que ce soit, il convient de créer son flux Feedburner à partir d’un flux déjà existant (qu’on souhaite rediriger tant qu’à faire). L’étape la plus simple.

Modifier les liens vers les flux
Une fois le flux créé, pensez à mettre à jour tous vos liens pointant vers ce fichier (balises <link />, liens hypertextes, boutons personnalisés etc.). Ceci a pour but d’unifier toute les adresses et éviter qu’il y aient plusieurs adresses visibles pour accéder à la même information.
Rediriger les flux existants
Arrivé à ce stade, il faut bien comprendre que nous avons 2 cas de figure :
- les anciens abonnés : ceux qui ont souscrit au flux avant que la modification précédente n’ait eu lieu. Le changement doit être transparent pour eux et ils ne doivent pas avoir à modifier la configuration de leurs agrégateurs actuels
- les nouveaux abonnés
L’intérêt est d’auditer tous les abonnés et donc pas seulement les nouveaux. C’est là que la redirection s’avère indispensable.
On est bien d’accord qu’il faudrait créer une redirection renvoyant l’ancienne adresse du flux vers la nouvelle adresse (celle fournie par Feedburner).
Le plus simple consiste à créer un fichier .htaccess (ou d’éditer directement les directives de votre serveur virtuel) dans le même répertoire que celui du fichier XML. Il contiendrait ce code :
RewriteEngine on
RewriteRule ^votreFlux\.xml$ http://feeds.feedburner.com/votreFluxFeedburner [R=301,L]
On teste, ça marche. Un peu trop bien puisqu’en suivant ce principe, quiconque appelle la véritable URL de votre flux sera redirigé vers le flux Feedburner. Si en soi ça ne pose pas problème majeur, ça l’est pourtant pour le robot d’indexation Feedburner qui, lui, a besoin d’accéder au véritable flux pour en extraire les informations.
Feedburner ayant bien fait les choses, leur robot d’indexation se signale en envoyant une entête User Agent FeedBurner/1.0 (http://www.FeedBurner.com). Ca tombe bien, il existe un filtre RewriteCond dans le module mod_rewrite. Ce dernier va nous servir à exclure le robot Feedburner de notre redirection précédente.
Juste au-dessus de notre RewriteRule, il suffit d’insérer la ligne suivante :
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
L’utilisation de cette condition est d’ailleurs la seule raison pour laquelle une règle de réécriture a été employée en lieu et place d’un RedirectPermanent.
Attention cependant, le RewriteCond est à spécifier à chaque règle de réécriture. La documentation est assez explicite à ce sujet : la condition n’est effective que pour une seule règle de réécriture.
Le résultat final
Et plutôt qu’un long discours, voici le résultat final obtenu pour Emu Nova. Les fichiers RSS étaient placés dans le répertoire go/rss/. J’y ai donc placé un fichier .htaccess contenant le code suivant :
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
RewriteRule ^news\.xml$ http://feeds.feedburner.com/emunovaNews [R=301,L]
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
RewriteRule ^veda\.xml$ http://feeds.feedburner.com/emunovaVedaTests [R=301,L]
RewriteCond %{HTTP_USER_AGENT} !FeedBurner
RewriteRule ^veda_commentaires\.xml$ http://feeds.feedburner.com/emunovaVedaCommentaires [R=301,L]
Pas difficile et tellement pratique



















Commentaires & rétroliens
Migration du flux RSS…
Ce midi, je viens de migrer mes flux RSS vers FeedBurner, ceci dans le but de tester ce service utilisé et recommandé par beaucoup de blogueurs, et d’en savoir un peu plus sur la fréquentation de mes flux. C’était une idée qui me trottait dans l…
J’ai découvert ton site grâce à cet article.
Je viens de le suivre pas à pas pour migrer également mes flux RSS. C’était une idée que j’avais depuis un petit moment mais j’avais la flemme de me pencher sur la régle de redirection du .htaccess.
Je me suis permis de citer ton blog dans mon billet et de faire un lien et un trackback vers ton article…
Bonne continuation
Oui je l’ai lu d’ailleurs ^^ j’étais repassé dessus pour voir si tes commentaires avaient bougé.
Tu n’y perdras pas au change dans tous les cas car Feedburner est rapide, te déchargera éventuellement de la charge de ton serveur et surtout, tu sauras combien tu as d’abonnés et quels sont les articles qui ont le davantage plu
[...] d’une telle envergure. Pour information, j’ai également publié un billet expliquant comment migrer un flux RSS vers Feedburner pour celles et ceux ne pouvant installer ce [...]
Merci pour cet article très bien détaillé. Je me lance de suite dans la migration de mes flux !
Je ne suis pas sûr d’avoir bien tout compris :
Voici ce que je crois devoir faire, merci de me dire si c’est pas tout bon :
Je place dans le dossier où se trouve le fichier mon_podcast.xml un autre fichier, que je crée avec le Blocnote et qui s’appelle mon_podcast.htaccess
C’est bien ça ?
Presque, le fichier doit s’appeler
.htaccesstout court. Son contenu devrait correspondre à ça, à vue de nez :Et je crois me souvenir qu’il y une option spéciale dans Feedburner pour les Podcast. À voir car ça peut être utile
Bonjour,
Merci pour le tutoriel fort interessant.
Petite question complétementaire, ou placer le fichier .htaccess sur un hebergement free + moteur wordpress ? vu que je n’ai pas accés directement aux fichier du serveur mais uniquement à mon repertoire perso.
(pas de ficher .xml en vu en tout cas).
La réécriture ne fonctionne pas chez Free.
Après, indépendamment de Free, le .htaccess se place en général à la racine de l’hébergement (en fait c’est plus complexe que ça mais restons simple).
WordPress ne génère pas de fichier XML qui plus est vu que ce n’était pas l’exemple en question. Par contre si tu as accès à ton répertoir eperso, tu as accès aux fichiers du serveur
En fait c’est ça le truc, on fait comment sous wordpress (quand on a un hébergement perso) ? Y’a pas de .xml…
L’exemple cité est « hors WordPress ». Il faudrait ajuster la règle de réécriture mais on va pas s’embêter pour ça puisqu’il y a déjà des plugins qui le font : Feedburner plugin et Feedsmith.
Merci pour le tuto, je m’en vais migrer mon flux de ce pas. J’espère que je n’aurai pas trop de problème, mais je ne vois pas ce qu’il pourrait y avoir.
Répondre