Le projet autoblog
-
Informations techniques
Contraintes
Pour que les webmasters adoptent le système de réplication, il doit être léger, facile à mettre en place et ne pas nécessiter de maintenance.
Il doit pouvoir tourner chez un maximum d'hébergeurs. Les dépendances doivent donc être minimisées.
Le programme doit adhérer au principe du KISS principle (Keep It Simple, Stupid).
Caractéristiques
- Unique fichier source, aucune dépendance.
- Moins de 400 lignes de php.
- Rapide.
- Lit les flux RSS 2.0, RSS 1.0/RDF et ATOM.
- Aucune base de données telle que mySQL nécessaire.
- URLS simplifiées (mod_rewrite n'est pas nécessaire).
- Affichage des articles par pages.
- Moteur de recherche intégré.
- Les médias (images,txt,pdf,odt) sont conservés dans un cache local.
- Mise à jour automatique du flux simplement en visitant la page.
- Mise en cache du flux source (mise à jour au plus une fois par heure) (On peut forcer la mise à jour).
- Republie un flux RSS 2.0 des articles.
- Les articles supprimés de la source restent visibles dans l'autoblog.
- Fournit un lien pour télécharger la configuration (
vvb.ini
)
et la base d'articles (store
) pour faciliter le clonage de l'autoblog.
- Fonctionne avec php5 (Ne fonctionne pas avec php4).
Fichiers
VroumVroumBlog est composé de 3 fichiers:
index.php
: Le programme lui-même (moins de 400 lignes de php).
vvb.ini
: Le fichier de configuration (obligatoire).
store
: La base de données (Optionel: Sera re-créée si absente.)
Base de données
VroumVroumBlog ne nécessite pas de base de donnés telles que mySQL ou Postgres. Il utilise un simple fichier, store
.
C'est un tableau associatif php sérialisé.
Cache local des médias
Tous les médias présents dans le corps de l'article (
src=...
et
href=...
) seront téléchargés et stockés dans un cache local,
dans le sous-répertoire
media
(qui sera automatiquement créé si nécessaire).
Les médias ne seront téléchargés que:
- s'ils ont une URL absolue dans le corps de l'article.
- que s'ils sont hébergés sur un des domaines spécifiés dans
vvb.ini
, dans le paramètre DOWNLOAD_MEDIA_FROM=...
- que s'ils portent l'extension jpg, jpeg, png, gif, txt, pdf ou odt.
- Les fichiers de plus de 4 Mo seront tronqués.
Mise à jour
L'autoblog se mettra automatiquement à jour dès que quelqu'un le visite, à moins qu'il se soit déjà mis à jour dans les 60 dernières minutes.
Cela permet de s'assurer que le blog est toujours à jour à chaque visite sans pour autant marteler le site source.
Vous pouvez forcer la mise à jour en ajoutant?force_the_fresh
dans l'URL
Licence
VroumVroumBlog est dans le domaine public.
Changements
Voici la liste des modification.
- 0.1.24 (anonyme) à 0.1.25 (sebsauvage)
- la configuration est maintenant dans un fichier séparé (vvb.ini)
- Ajout du support des flux ATOM (en plus de RSS 2.0)
- Ajout du lien pour télécharger la config (vvb.ini) et la base d'articles(store)
- Ajout d'une option pour spécifier les domaines d'où télécharger les médias (DOWNLOAD_MEDIA_FROM)
- Suppression de la compression gzip (qui provoque divers problèmes)
- Le téléchargement des médias est maintenant restreint à certains types (jpg/gif/png) (afin d'empêcher le téléchargement des flux webm, par exemple).
- Le téléchargement des médias est limité à 4 Mo par fichier.
- Correction du flux RSS 2.0 en sortie (l'encodage de la description n'était pas correcte et pouvait poser problème avec certains sites).
- 0.1.25 à 0.1.26
- Patch par Le Hollandais Volant: Ajout de
link rel="canonical"
dans le header pour éviter les problèmes de référencement.
- 0.1.26 à 0.1.27
- Un lien vers l'article sur le site source est maintenant affiché dans chaque article.
- Correction d'un bug de la lecture du lien source dans les flux RSS 2.0.
- Ajout du lien vers la page du projet en bas d'écran.
- 0.1.27 à 0.1.28
- Ajout du support des flux RSS 1.0/RDF (grâce à BohwaZ).
- Téléchargement automatique des médias en tâche de fond après la lecture du flux source.
- Ajout du téléchargement des médias liés (href=...).
- Ajout du support des médias: txt, pdf, odt.
- Ajout du patch de BoboTiG
- Lors de l'affichage d'un article, le
link rel="canonical"
pointe désormais vers l'article source, et pas seulement le site source.
- 0.1.28 à 0.1.29
- Dans les flux RSS 2.0, si
content:encoded
est manquant, le corps de l'article est lu de description
à la place (par exemple pour laquadrature.net).
- 0.1.29 à 0.1.30
- Ajout du support de
dc:date
(Certains flux RSS mettent la date dans cette balise au lieu de pubDate
, ce qui est typiquement le cas du CMS SPIP).
- 0.1.30 à 0.1.31
- Ajout: Dans les feeds ATOM, certains mettent la date de l'article dans
updated
au lieu de published
(comme PluxML).
- 0.1.31 to 0.1.32
- Corrigé: Faille potentielle corrigée (XML injection) avec php >= 5.2.0 (Merci à BohwaZ).
Version améliorée (série 0.2.x)
Si vous le souhaitez, il existe une version plus élaborée de VroumVroumBlog
publiée par BohwaZ (utilisant SQLite3, interface traduisible, modèle objet, meilleure pagination...).
Cette version est plus rapide que la série 0.1.x mais ne fonctionnera pas chez tous les hébergeurs.
Si vous voulez la version améliorée (plus rapide, meilleure pagination, etc.), prenez la version 0.2.x dans
cette page.
Si vous voulez être sûr que ça marche partout, même sur les hébergeurs merdiques, utilisez la
version 0.1.x.
Retour