Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Bouw je Raspberry Pi om tot RSS-machine

Door: Koen Vervloesem | 24 juli 2014 10:00

None
Apps & Software

Inhoudsopgave

  1. Inleiding
  2. pagina 2
  3. pagina 3

Wil je altijd en overal op de hoogte blijven van de laatste nieuwtjes van je favoriete websites? We tonen je hoe je het programma Selfoss op je Raspberry Pi installeert, waarna het computertje de hele dag door de feeds van de aangegeven websites actualiseert.

01 Eigen rss-lezer

Rss-lezers heb je in verschillende vormen. Je kunt er een op je desktop-pc draaien, maar als je dan onderweg bent met je smartphone of op je terras zit met je tablet, heb je geen toegang tot de feeds die op je computer ingelezen zijn. Een alternatief vormen webgebaseerde rss-lezers, zoals het lang populaire Google Reader. Dit soort diensten kun je echter even goed op je eigen server draaien.

De Raspberry Pi, immers een heel zuinig apparaatje, is hiervoor ideaal (ook als printserver). We gaan ervan uit dat er al Raspbian op draait. Voor accessoires kun je hier terecht.

02 Selfoss

De bekendste rss-lezer om op je eigen server te installeren, is Tiny Tiny RSS. Ondanks de naam heeft de software enorm veel mogelijkheden. Helaas is het voor een Raspberry Pi net iets te zwaar als je heel wat feeds volgt. Bovendien moet je de configuratie heel wat tweaken om het op een respectabele snelheid te laten werken. Daarom kiezen we in deze op de Raspberry Pi gerichte workshop liever voor Selfoss. Dit programma heeft wat minder mogelijkheden, maar is heel licht en zal daardoor niet zo snel frustreren door lange laadtijden.

03 Webserver en php

Om Selfoss te gebruiken, moeten we eerst wat andere software installeren. Allereerst een webserver, want Selfoss is een webgebaseerde dienst. We installeren lighttpd, dit is een lichtgewicht webserver. We hebben ook PHP nodig (daarin is Selfoss geschreven), samen met enkele specifieke PHP-pakketjes. Dat alles kan in één keer met de volgende opdracht nadat je in een PuTTY-venster op je Raspberry Pi ingelogd bent: sudo apt-get install lighttpd php5 php5-cgi php5-cli php5-sqlite php5-gd. Bevestig de installatie met een druk op Y.

Wat zijn rss-feeds?

Als je vroeger een aantal favoriete websites had, moest je zelf elke dag die websites bezoeken en lezen wat er nieuw was. In 1997 ontwikkelde Dave Winer al een oplossing: RSS (Really Simple Syndication), een bestandsformaat dat samenvattingen bevat van nieuws. Blogs, maar ook fora en nieuwssites kregen al snel een rss-feed, de naam die zo'n bestand heeft. Je herkent een rss-feed op een website aan het oranje icoontje. Daaronder schuilt de url die je aan je rss-lezer doorgeeft.

Wat doet een rss-lezer?

De rss-feeds van je favoriete website voeg je aan een rss-lezer toe, een programma dat periodiek al die feeds downloadt en nieuwe toevoegingen toont. Zo krijg je per website in één venster te zien welk nieuws er is toegevoegd. Er bestaan afzonderlijke rss-lezers die je op je desktop draait, maar ook webdiensten die rss-feeds lezen. In Internet Explorer open je het menu Extra en dan Feeds zoeken om de rss-feeds op een website te bekijken.

04 Download

Op de Selfoss-site staat een groen downloadknopje. Kopieer de link erachter naar het klembord, open een PuTTY-venster naar je Raspberry Pi en typ wget, een spatie, en plak de link door in het PuTTY-venster te rechtsklikken. Druk op Enter waarna het zipbestand van Selfoss op je Raspberry Pi gedownload wordt. Pak het zipbestand uit met sudo unzip -d /var/www/selfoss selfoss-*.zip. Met sudo chown -R www-data:www-data /var/www/selfoss/ geven we de webserver toegang tot de directory.

05 Configureer lighttpd

Nu schakelen we nog twee modules voor de webserver in met de opdracht sudo lighttpd-enable-mod fastcgi fastcgi-php. Daarna moeten we nog een instelling van PHP aanpassen. Doe dat met de opdracht sudo nano /etc/php5/cgi/php.ini. Start de zoekfunctie met een druk op Ctrl+W, typ max_execution_time in en druk op Enter. Nano toont nu de juiste regel, daar verander je het getal naast het gelijkheidsteken naar 120. Druk op Ctrl+O om je wijziging op te slaan en Ctrl+X om Nano af te sluiten.

06 Configureer Selfoss

Ga daarna naar de map van Selfoss met de opdracht cd /var/www/selfoss/. In die map staat een configuratiebestand voor de webtoegang. Daar passen we iets in aan met de opdracht sudo nano .htaccess. Op een van de eerste regels van het bestand staat #RewriteBase /selfoss. Haal het hekje (#) aan het begin van de regel weg, sla op met Ctrl+O en sluit af met Ctrl+X. Daarna maken we het bestand met de instellingen voor Selfoss klaar door een standaardbestand te kopiëren: sudo cp defaults.ini config.ini. Open het met sudo nano config.ini om instellingen aan te passen.

07 Herschrijf urls

Selfoss is voor zijn werking afhankelijk van de mogelijkheid van de webserver om urls te herschrijven. Daarom moeten we nog het een en ander aanpassen in de configuratie van lighttpd. Op de wiki van Selfoss vind je instructies over de lange herschrijfregels. Voer de opdracht sudo nano /etc/lighttpd/lighttpd.conf uit, haal het hekje weg voor de regel met mod_rewrite onder de sectie server.modules en voeg op het einde van het bestand de code uit de wiki toe. Sla je wijzigingen op met Ctrl+O en sluit Nano af met Ctrl+X.

08 Automatisch updaten

Het enige dat we nu nog moeten doen is Selfoss automatisch elk uur de rss-feeds laten updaten. Dat kan met sudo nano /etc/cron.hourly/selfoss, waarna je de volgende tekst ingeeft: op de eerste regel #!/bin/bash, daarna /usr/bin/curl -s -S -m 3300 http://127.0.0.1/selfoss/update >>/tmp/selfoss_update.log 2>&1 en op de laatste regel exit 0. Sla op en sluit Nano af, waarna je het bestand uitvoerbaar maakt met sudo chmod +x /etc/cron.hourly/selfoss. Herstart daarna de webserver om voorgaande instellingen door te voeren met sudo service lighttpd restart.

5 Reacties op: Bouw je Raspberry Pi om tot RSS-machine

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • 2 jaren, 12 maanden geleden
    In step 08 krijg ik bij het herstarten van lighttpd de foutmelding ´port 80 already in use'
    Geen idee wat ik hieraan kan doen. Hoe nu verder ?
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.
  • 2 jaren, 11 maanden geleden
    Super snelle installatie. Wel heb ik als tip voor het wachtwoord: gewoon in de instellingen noteren. ( nano) daar zie je twee keer je naam en wachtwoord. Bij alle twee je gekozen woorden invoeren. Als je namelijk de generator op de site gebruikt, dan krijg je een hele lange ww. Verder moet ik nog op de juiste manier mijn poort op de router openzetten.
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.
  • 2 jaren, 11 maanden geleden
    Super goede uitleg ! Werkt perfect. Nu ben ik overal op een simplele wijze op de hoogte van nieuws. Als het goed is kan ik nu mijn raspberry gebruiken voor een SSH VPN verbinding !!
    TOP
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.
  • 2 jaren, 10 maanden geleden
    In de beschrijving kan er elke uur automatisch een update plaatsvinden. Welke opdracht moet ik ingeven om elke twee minuten automatisch te updaten ? Ik vind namelijk een keer per uur te lang duren en wil niet telkens handmatig updaten.
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.
  • 2 jaren, 8 maanden geleden
    Als je de melding krijgt: port 80 al in gebruik , dan kan je die veranderen naar port 443 sudo nano /etc/lighttpd/lighttpd.conf server.port 80 veranderen in 443. Daarna sudo service lighttpd restart.
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.