Naar de inhoud

Blog

Hoe je site op een server draait: van adres tot pagina

Door Mart Broer, oprichter

Tussen het intypen van een webadres en de pagina op je scherm gebeurt meer dan je denkt. Je telefoon zoekt eerst op waar de site staat, maakt dan een beveiligde verbinding en klopt aan bij de server, waar een programma de pagina klaarzet. In dit stuk lopen we die weg stap voor stap af, en laten we zien hoe dat op onze eigen server is geregeld.

Dit is deel 2 van de reeks zo werken onze systemen. In deel 1 ging het over de taal waarin we bouwen. Twijfel je of je een eigen server nodig hebt of dat gedeelde hosting genoeg is? Die keuze leggen we uit in Eigen server of gedeelde hosting. Hier gaat het over hoe het werkt.

Eerst even: een verzamelgebouw voor bedrijven

Stel je een bedrijfsverzamelgebouw voor. Aan de straat staat een adres, zodat bezoekers weten waar ze moeten zijn. Binnen zit een receptie die bezoekers binnenlaat en naar het goede bedrijf stuurt. Elk bedrijf heeft een eigen unit, met een eigen deur en een eigen sleutel. Wat er in de ene unit gebeurt, merkt de buurman zo weinig mogelijk.

Een server met meerdere sites werkt bijna net zo:

  • Het adres is je domeinnaam, zoals lichthoek.nl.
  • De receptie is de webserver. Die ontvangt elk bezoek en stuurt het naar de goede site.
  • De units zijn de afgeschermde omgevingen waarin de sites met een eigen programma draaien.

Stap 1: het adres (domeinnaam en DNS)

Een computer op internet heeft een nummer, een beetje zoals een telefoonnummer. Dat nummer onthoudt niemand. Daarom is er de domeinnaam: een naam die je wel kunt onthouden, zoals pandinfo.nl.

Typ je een domeinnaam in, dan zoekt je telefoon of laptop eerst op welk nummer erbij hoort. Dat gaat via DNS, het adresboek van internet. Bij elke domeinnaam staat daarin bij welke server hij hoort. Voor de sites die bij ons staan, wijst dat adresboek naar onze eigen server, in een datacenter binnen de EU.

  • De domeinnaam is iets anders dan de hosting. Je domeinnaam huur je bij een bedrijf dat domeinnamen registreert. Je site staat op een server. Dat kunnen twee verschillende bedrijven zijn.
  • Een domein kan doorsturen. Typ je www.lichthoek.nl, dan kom je vanzelf op lichthoek.nl uit. Zo heeft een site één vast adres.
  • Een nieuwe site kan eerst op een voorbeeldadres staan. Zolang een klant zijn site alleen mag bekijken, staat die achter een wachtwoord en vragen we zoekmachines hem niet op te nemen. Pas als de klant akkoord is, gaat de site op zijn eigen domein.

Stap 2: het slotje (https)

Weet je telefoon het nummer, dan maakt hij verbinding met de server. Dat gaat via https: een versleutelde verbinding. Je herkent het aan het slotje in de adresbalk. Wat een bezoeker invult, zoals zijn naam of een bestelling, kan onderweg niemand meelezen.

Daarvoor is een certificaat nodig, een soort digitaal paspoort van je site. Het bewijst dat de bezoeker echt met jouw site praat en niet met een nep-site. Zo'n certificaat is maar een beperkte tijd geldig en moet dus steeds vernieuwd worden.

Wij halen die certificaten bij Let's Encrypt, een organisatie die gratis certificaten uitgeeft. Het vernieuwen gaat vanzelf: onze webserver vraagt op tijd een nieuw certificaat aan.

Stap 3: de receptie (de webserver)

Nu komt het bezoek binnen bij onze server. Daar staat de receptie klaar: de webserver. Dat is een programma dat bezoekers ontvangt, het slotje regelt en elk bezoek doorstuurt.

De webserver kijkt naar het adres dat de bezoeker vroeg. Vraagt hij om pandinfo.nl, dan gaat het bezoek naar de unit van PandInfo. Vraagt hij om nummerbordcheck.nl, dan naar die van Nummerbordcheck.nl.

De units hebben geen eigen voordeur aan de straat. Een bezoeker komt alleen via de receptie binnen. Daarnaast laat een firewall alleen het webverkeer voor iedereen door, en inloggen op de server kan alleen met een digitale sleutel. Over beveiliging gaat deel 3 verder.

Ook bij de receptie zelf letten we op. Passen we iets aan in de instellingen van de webserver, dan laden we die opnieuw in terwijl hij blijft draaien. Voor en na elke wijziging kijken we of de andere sites nog net zo antwoorden als ervoor.

Stap 4: elk bedrijf een eigen unit (containers)

Achter de receptie zitten de units. Een site met een eigen programma draait bij ons in een container: een afgeschermde omgeving op de server. Daarin staat precies wat die ene site nodig heeft: het programma, de bouwstenen en de juiste versie van Python.

  • Sites zitten elkaar niet in de weg. De ene site kan een andere versie van een bouwsteen gebruiken dan de andere.
  • Weinig rechten. Het programma in de container heeft geen extra rechten op de server, en mag zijn eigen code niet veranderen.
  • Na een herstart vanzelf terug. Start de server opnieuw op, dan starten de containers vanzelf mee.

Sites zonder programma

Niet elke site heeft een programma nodig. Sommige sites bestaan alleen uit vaste pagina's, met tekst, foto's en opmaak. Bouwers noemen zo'n site statisch.

Voor een statische site maken we geen container. De receptie geeft de pagina's zelf aan de bezoeker, rechtstreeks uit een map op de server. Een paar sites die bij ons staan, werken zo. Het voordeel: er is geen programma dat kan haperen, en er is minder bij te houden. Het nadeel: er kan niets op dat iets moet onthouden, zoals een beheer of een winkelwagen.

Waar je gegevens staan

Een site met een programma heeft vaak ook gegevens, zoals bestellingen, teksten uit het beheer of foto's die je zelf uploadt. Die staan bij ons los van het programma, in een eigen map per site. Bij een update vervangen we alleen het programma. De map met gegevens blijft gewoon staan.

Elke dag maken we een kopie. Een database die in gebruik is, kopiëren we op een veilige manier, zodat de kopie niet half is.

Gegevens die een klant in zijn site of systeem bij ons zet, delen we niet met de AI-hulp waarmee we bouwen. Testen doen we met verzonnen gegevens in dezelfde vorm. Moet er toch naar echte gegevens gekeken worden, dan doet je broer dat zelf.

Onderhoud en controle

Er komen steeds reparaties uit, vooral voor lekken. Updates houden we bij. Soms vraagt een update om een herstart van de server. Dat doen we op een rustig moment, en je site is dan heel even weg.

We houden in de gaten of alles draait, en grijpen in als het nodig is.

Wat jij als ondernemer moet weten

Je hoeft zelf geen server te beheren. Stel wel deze vragen aan je bouwer of hoster:

  • Op wiens naam staat mijn domeinnaam? Het liefst op die van jou.
  • Vernieuwt het certificaat voor https vanzelf? En wie merkt het als dat een keer niet lukt?
  • Draait mijn site afgeschermd van andere sites?
  • Staan mijn gegevens los van het programma? En blijven ze staan bij een update?
  • Hoe vaak is er een kopie, en hoe lang blijft hij bewaard?
  • Wie doet de updates? Van de server, maar ook van de site zelf.
  • Wie merkt het als mijn site eruit ligt? En wat gebeurt er dan?

Meer over waar je gegevens staan en wat de AVG daarvan vindt, lees je in Hosting in Europa en de AVG.

Wat het bij ons kost

Hosting en beheer zitten in elke broer. Kleine broer is vanaf € 19 per maand, plus eenmalig bouwen vanaf € 495. Grote broer is vanaf € 68 per maand, zonder opstartkosten. De hele familie is vanaf € 117 per maand, plus maatwerk vanaf € 2.500.

Alleen een website op maat? Dan kost het bouwen vanaf € 1.250, plus € 15 per maand voor hosting en beheer. Alle bedragen zijn exclusief btw. Je krijgt eerst een offerte. Wat er in het beheer zit, lees je bij hosting en beheer. Alles op een rij zie je bij prijzen.

Vaak gevraagd

Merk ik het als jullie mijn site bijwerken?

Meestal niet. We vervangen alleen het programma, en je gegevens blijven staan. Een herstart van de server doen we op een rustig moment, en dan is je site heel even weg.

Staat mijn site op een server voor mij alleen?

Nee. Je site staat op onze eigen server, samen met de andere sites en systemen die wij bouwen. Wel draait elke site met een programma in een eigen afgeschermde omgeving.

Kan ik mijn domeinnaam houden als ik naar jullie overstap?

Ja. Je domeinnaam blijft van jou. We laten hem alleen naar onze server wijzen, via het adresboek van internet. Meer over overstappen lees je bij overstappen van PHP.

Waar staat jullie server precies?

Bij Hetzner, in een datacenter binnen de EU. Hetzner is onze enige sub-verwerker. Wil je een eigen server die wij beheren? Kijk dan bij serverbeheer.

De reeks zo werken onze systemen

Werk

Gemaakt door je broer

pandinfo.nl
De voorpagina van pandinfo.nl: een adres invoeren, zoeken op de kaart, en hoe het werkt.
De voorpagina van pandinfo.nl op een telefoon.

003 · webapp

PandInfo

Typ een adres en PandInfo zet binnen een paar seconden op een rij wat de overheid over dat pand weet: bouwjaar, oppervlakte, energielabel, bestemmingsplan, monument, bodem, funderingsrisico, verkoopprijzen en de buurt. In gewone taal, met de bron bij elk cijfer, en ook als pdf. Achter de schermen vraagt het tegelijk meer dan dertig openbare bronnen op, van het Kadaster tot de Omgevingswet.

  • Open overheidsdata
  • Koppelingen
  • Webapp
  • PDF-rapport
  • Omgevingswet
pandinfo.nl ↗ Lees het verhaal
nummerbordcheck.nl
De voorpagina van nummerbordcheck.nl: een gele kentekenplaat als invoerveld, een voorbeeldkaart met stoplichten, en wat je ziet.
De voorpagina van nummerbordcheck.nl op een telefoon.

004 · webapp

Nummerbord­check.nl

Kentekencheck: vul een Nederlands kenteken in en zie in gewone taal wat de RDW openbaar weet, met stoplichten per punt, de hele keuringsgeschiedenis, terugroepacties en leuke feitjes. Van idee tot live in twee dagen.

  • Open data RDW
  • Webapp
  • Eigen huisstijl
  • Twee dagen
nummerbordcheck.nl ↗ Lees het verhaal
lichthoek.nl
De voorpagina van lichthoek.nl: foto- en videoapparatuur, populaire producten, categorieën, direct leverbaar en merken.
De voorpagina van lichthoek.nl op een telefoon.

005 · webshop

Lichthoek

Een webshop voor foto- en videoapparatuur, fotolijsten en fotopapier, met ruim 3.800 producten. Producten, prijzen en voorraad komen vanzelf uit het voorraadsysteem, en een bestelling gaat vanzelf terug, met de track-and-trace naar de klant. Gebouwd en live op één dag.

  • Webshop
  • 3.800 producten
  • Gekoppeld aan voorraad
  • Eigen server
lichthoek.nl ↗ Lees het verhaal

Contact

Bel je broer.

Liever eerst mailen? Ook prima. Je broer leest alles, en belt terug als het ingewikkeld wordt.

Eerst weten wat het kost?Alle prijzen staan op de site, vanaf € 19 per maand.