Onderstaand wat informatie voor het opzetten van een website zonder al teveel technische details. Voordat je begint moeten een aantal keuzes worden gemaakt:
- zelf doen of (gedeeltelijk) laten doen.
- vaststellen wat de inhoud wordt.
- vaststellen wat niet gepubliceerd mag worden.
- vaststellen wie de doelgroep wordt.
Het geheel zelf opzetten van een website kost behoorlijk wat tijd en inspanning:
- Server inrichten (Windows, Linux).
- domeinnaam kiezen en registreren.
- Webserver inrichten (Apache, NGINX).
- Keuze websoftware maken (WordPress, Drupal, Joomla, ExpressionEngine, Plone, SilverStripe etcetera) of gewoon in HTML.
- Vaststellen aantal talen waarin de website verschijnt.
- Bouwen van de inhoud (webpages, berichten, afbeeldingen).
Website laten bouwen
Er zijn diverse aanbieders die geheel of gedeeltelijk een website kunnen hosten of bouwen. Als je in je zoekmachine ‘website’ of ‘website hosting’ intikt krijg je genoeg resultaten. In dit artikel gaan we daar niet verder op in, behalve dat dit wel een snelle manier is mocht je haast hebben.
Website zelf bouwen
Dat is het hoodonderwerp van dit artikel. De website waar u nu naar kijkt draait op:
- Server: Raspberry Pi
- OS: Raspberry OS (Linux)
- Software: PHP, MariaDB
- Webserver: NgInx in reverse proxy opstelling met Apache.
- Websoftware: WordPress.
Omdat geheel gebruik gemaakt wordt van open source software bestaan de kosten voornamelijk uit de aanschaf van een Raspberry Pi en een internet domain, in dit geval www.sparreboom.net.
Server
Als server kan van alles gekozen worden, bijvoorbeeld een oude pc, maar houdt wel rekening met de electriciteitskosten. Een server staat in principe dag en nacht aan, dus de kosten kunnen behoorlijk oplopen. Een klein computertje als de Raspberry Pi heeft als nadeel dat het geen honderden bezoekers tegelijk kan bedienen, maar genealogie websites worden doorgaans niet zo frequent bezocht.
Software
Om een website draaiend te krijgen zijn een aantal software programma’s nodig. Behalve een besturingssysteem zoals Linux heb je in elk geval Nginx en/of Apache (webservers die de pagina’s bescikbaar maken zodat je ze in je browser kunt zien) nodig. Daarnaast PHP (een programmeertaal) en MariaDB (een database waar alle pagina’s, gebruikers en dergelijke in worden opgeslagen). Het voert te ver om alle details hier te beschrijven, maar er zijn een behoorlijk aantal websites waar deze informatie te vinden is, bijvoorbeeld hier.
WordPress
Als genealoog of familiestichting wil je je bezig houden met de inhoud en niet met de techniek achter een website. Een content management systeem (CMS) als WordPress is zo ontworpen dat versiebeheer, gebruikersrechten, zoekmogelijkheden en media als afbeeldingen, geluidsfragmenten en dergelijke technisch beschikbaar zijn zonder dat je je druk hoeft te maken hoe dat achter de schermen allemaal werkt. En dat scheelt een hoop werk! WordPress is gratis te downloaden, hier, en de installatie ervan is niet moeilijk.
Domein
Als de website eenmaal draait kan je er thuis gebruik van maken zodra de server in het eigen netwerk is aangesloten. Maar het eigen netwerk is afgesloten van de buitenwereld door de router die met het internet verbonden is. Je zult dus een poort in de routerinstellingen moeten openen zodat de server aan het internet wordt blootgesteld. Het openen van een poort is niet zonder risico en je zult het zo moeten doen dat die poort alleen informatie doorlaat naar die ene server en niet naar de rest van het thuisnetwerk. En in de server moeten instellingen staan die alleen en uitsluitend naar die poort zend en ontvangt.
Op het internet zelf heeft iedere website zijn eigen adres, een getal als 142.250.179.131 dat niemand wil onthouden. Daarom is DNS (domain name service) uitgevonden dat een beter te onthouden naam als www.google.nl vertaald naar het adres 142.250.179.131. Dus om je server via DNS vindbaar te maken heb je een domeinnaam als www.sparreboom.nl nodig. Als je met een zoekmachine als Google zoekt naar ‘domeinnaam’ vindt je heel veel aanbieders. Kijk wel door de aanbiedingen heen, zo’n domeinnaam heb je lang nodig en dus is het van belang wat je na drie maanden gaat betalen.
Certificering https
Standaard is een website bereikbaar via http, een protocol voor het verzenden van webpages. Maar dat protocol heeft een aantal security risico’s die enigszins zijn opgelost via het https protocol, herkenbaar aan het slotje dat in veel browsers aan het begin staat:
Als je website dat protocol niet ondersteund zullen veel bezoekers van je website een waarschuwing krijgen van je browser. Om dat te voorkomen is het beter om https te gebruiken en daarvoor is een certificaat nodig. Gelukkig kan je die tegenwoordig gratis krijgen bij Let’s Encrypt. Dat certificaat moet in de server worden geïnstalleerd en regelmatig worden vernieuwd, iets dat geautomatiseerd kan worden.
En nu?
Bovenstaand verhaal zal veel lezers afschrikken om zelf een website in elkaar te sleutelen want je moet je in heel veel dingen gaan verdiepen. Toch is het zeker te doen als je bereid bent systematisch te werken en goed op het internet te zoeken. Er zijn zelfs YouTube filmpjes te vinden:
Het is sowieso een leuke hobby, net als genealogie.