Files
silly-rss/README.md
T

3.1 KiB

Flux RSS - Commune de Silly

Genere trois flux RSS/Atom pour la commune de Silly (Belgique) : actualites, agenda et page Facebook, a deployer sur un hebergement PHP mutualise (extensions curl et dom uniquement, aucun cron ni conf serveur : chaque flux se regenere a la demande et est mis en cache).

Depuis le 14/10/2026, www.silly.be est passe de Plone (imio.smartweb) a WordPress. L'ancienne API JSON n'existe plus ; la variante Python (silly_rss.py) et ses fichiers de deploiement (nginx/cron) qui en dependaient ont ete supprimes (historique git). Nouvelles sources :

Flux Source Cache
actualites.php flux RSS WordPress https://www.silly.be/actualites/feed/ (50 derniers articles via ?paged=1..5, texte complet), re-servi tel quel avec atom:link rel="self" corrige 15 min
agenda.php iCal officiel https://www.silly.be/agenda/?ics=1, converti en RSS (guid = UID, link = URL, description = dates + lieu + texte) 12 h
facebook.php proxy du flux FetchRSS 15 min

Limites de l'agenda : l'iCal ne liste que les evenements a venir, et les regles de recurrence (RRULE) ne sont pas developpees. L'API REST /wp-json/wp/v2/evenement expose davantage d'evenements (passes inclus) mais sans aucune date (champ acf vide), donc inutilisable pour un agenda.

Deploiement (hebergement perso — sillycone-village.be)

  1. Copier tout le dossier php/ sur l'hebergement (FTP/SFTP), dans silly-rss/ a la racine du site (Apache, confirme actif sur sillycone-village.be).
  2. Verifier que PHP a les extensions curl et dom activees (quasi toujours le cas en mutualise standard).
  3. Le dossier php/cache/ doit etre inscriptible par PHP (permissions par defaut suffisent generalement sur du mutualise ; sinon chmod 775).
  4. Les flux sont alors accessibles en :
    • https://sillycone-village.be/silly-rss/actualites.php
    • https://sillycone-village.be/silly-rss/agenda.php
    • https://sillycone-village.be/silly-rss/facebook.php (proxy/cache du flux FetchRSS de la page Facebook, pour avoir une URL stable sur votre propre domaine)
  5. Ajouter ces 3 URLs comme sources dans FreshRSS (Administration > Flux RSS > Ajouter un flux), sur https://akbar.nohost.me/rss.

Note CSP : sillycone-village.be sert ses pages HTML avec un Content-Security-Policy strict (connect-src 'self' ...). Cela ne concerne que le JS execute dans le navigateur sur ce site — sans impact ici puisque FreshRSS recupere les flux XML cote serveur.

Teste avec PHP 8.3 CLI (16/10/2026) : les 3 scripts produisent du XML bien forme avec de vraies donnees (10 actualites, 4 evenements).

Facebook (page communedesilly)

Pas de solution fiable trouvee en scraping direct : le HTML de facebook.com est vide de contenu exploitable sans authentification, et l'instance RSS-Bridge testee (FacebookBridge) renvoie une erreur 400. Solution retenue : FetchRSS (service tiers), reproxifie sous votre propre domaine (facebook.php) pour avoir 3 URLs stables et partageables.