paraandClaude Sonnet 5 a48775557e Set actual domain (akbar.nohost.me) in deploy configs
/rss is already taken by FreshRSS on this domain, so the Python+cron
variant serves under /silly-rss/ instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-25 22:05:31 +02:00
…
…

Flux RSS - Commune de Silly

Genere trois flux RSS/Atom pour la commune de Silly (Belgique) : actualites, agenda et page Facebook. Deux implementations equivalentes sont fournies :

  • php/ — a deployer sur un hebergement PHP mutualise classique. Recommande : aucun cron ni conf serveur a ecrire, chaque flux se regenere a la demande (avec cache 15 min) des qu'un lecteur RSS l'interroge.
  • silly_rss.py — script Python autonome a lancer via cron, pour un serveur ou vous controlez le cron/nginx (ex. Yunohost).

Les deux utilisent la meme source : l'API JSON REST (Plone / imio.smartweb) que www.silly.be charge en JS via les balises <smartweb-news> / <smartweb-events> — pas besoin de navigateur headless. Le detail technique (empreinte Cloudflare, contrainte b_size=20) est commente dans php/common.php et silly_rss.py.

Option recommandee : PHP (hebergement perso)

  1. Copier tout le dossier php/ sur l'hebergement (FTP/SFTP), par ex. dans silly-rss/ a la racine du site.
  2. Verifier que PHP a l'extension curl activee (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://votre-site/silly-rss/actualites.php
    • https://votre-site/silly-rss/agenda.php
    • https://votre-site/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).

Teste avec PHP 8.3 CLI : les 3 scripts produisent du XML valide avec de vraies donnees (40 actualites, 12 evenements, flux Facebook proxifie).

Option alternative : Python + cron (Yunohost)

  1. Dossier de sortie

    sudo mkdir -p /var/www/silly-rss
    sudo chown $(whoami):www-data /var/www/silly-rss
    
  2. Cron — voir deploy/silly-rss.cron pour la ligne a ajouter via crontab -e (execution toutes les heures).

  3. nginx — voir deploy/nginx-silly-rss.conf, a copier dans /etc/nginx/conf.d/akbar.nohost.me.d/silly-rss.conf puis :

    sudo nginx -t && sudo systemctl reload nginx
    

    NB : /rss est deja pris par FreshRSS sur ce domaine, d'ou le choix de /silly-rss/ comme chemin.

  4. Premiere generation (avant le premier passage du cron) :

    python3 silly_rss.py /var/www/silly-rss
    
  5. FreshRSS — ajouter comme sources :

    • https://akbar.nohost.me/silly-rss/actualites.xml
    • https://akbar.nohost.me/silly-rss/agenda.xml

Cette option ne gere pas Facebook (pas de proxy) : ajouter directement l'URL FetchRSS dans FreshRSS si vous utilisez cette variante.

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). La variante PHP le reproxifie sous votre propre domaine (facebook.php) pour avoir 3 URLs stables et partageables ; la variante Python s'appuie directement sur l'URL FetchRSS.

S
Description
No description provided
Readme
98 KiB
Languages
PHP 100%