Module 3 · 3.4
www, doorsturen en wat DNS niet doet
Module 3: Records voor je website · Leestijd: 7 minuten
Leerdoel: Na deze les ken je het verschil tussen DNS (waar staat de server) en doorsturen (welke pagina krijg je), en kun je www goed inrichten.
Kernbegrippen: www, doorsturen (redirect, 301/302), domeinpointer of alias, https-certificaat, een pad bestaat niet in de DNS
Wat DNS wel en niet weet
De DNS beantwoordt één soort vraag: "waar staat deze naam?" Het antwoord is een adres (A, AAAA) of een andere naam (CNAME). Daarna is de DNS klaar. Alles wat daarna gebeurt, regelt de webserver op dat adres.
Een webadres bestaat uit meer dan een naam:
https://www.example.com/contact?taal=nl
└─┬─┘ └──────┬───────┘└───┬──┘└──┬──┘
protocol naam pad parametersAlleen het middelste deel, de naam, komt bij de DNS terecht. Het protocol (https), het pad (/contact) en de parameters ziet de DNS nooit. Daaruit volgen een paar dingen die veel mensen verrassen:
- De DNS kan niet doorsturen naar een pagina. Een record als "
example.comnaarothersite.example/actie" bestaat niet. - De DNS kiest niet tussen http en https. Of een bezoeker op https terechtkomt, regelt de webserver.
- De DNS weet niet welke website er op een server staat. Op één IP-adres kunnen honderden websites draaien. De browser stuurt de naam mee in zijn verzoek, en de webserver kiest op basis daarvan de juiste site.
Doorsturen gebeurt op de webserver
Wil je dat example.com bezoekers doorstuurt naar www.example.com, of dat een tweede domeinnaam naar je hoofdsite gaat? Dan heb je twee stappen nodig:
- DNS: laat de naam naar een webserver wijzen die het doorsturen kan doen. Dat is meestal je eigen hosting, of een doorstuurdienst van je registrar.
- Webserver: stel daar een doorsturing (redirect) in. De server antwoordt dan niet met een pagina, maar met "ga naar dit andere adres". De browser volgt dat vanzelf.
Een doorsturing heeft een code:
| Code | Betekent | Gebruik je voor |
|---|---|---|
| 301 | Permanent verhuisd | Een vaste doorsturing, bijvoorbeeld van de kale naam naar www. Zoekmachines nemen het nieuwe adres over. |
| 302 (of 307) | Tijdelijk elders | Een tijdelijke actiepagina of onderhoud. |
Een domeinpointer of domeinalias is iets anders: dan toont dezelfde website zich onder twee namen, zonder dat de adresbalk verandert. Ook dat regelt het hostingpaneel, niet de DNS. De DNS van de tweede naam moet alleen naar dezelfde server wijzen.
Er bestaat ook frame forwarding: de adresbalk blijft je domein tonen terwijl je een andere site ziet. Dat werkt vaak slecht met moderne websites (die weigeren in een frame te laden) en zoekmachines vinden het niet prettig. Gebruik het liever niet.
www: wel of niet?
www is gewoon een subdomein. Of je je site op www.example.com of op example.com laat draaien, is een keuze. Belangrijk is alleen:
- Allebei moeten werken. Mensen typen het een of het ander. Ontbreekt een record voor
www, dan krijgen zij een foutmelding dat de site niet bestaat. - Kies één als hoofdadres en laat de andere daarnaar doorsturen met een 301. Dan ziet een zoekmachine één site, niet twee kopieën.
In de DNS komt dat meestal neer op:
example.com. 3600 IN A 192.0.2.10
www.example.com. 3600 IN CNAME example.com.of een eigen A-record voor www met hetzelfde adres. Een wildcard (les 3.3) kan www ook opvangen. Bij een externe dienst, zoals een webwinkelplatform, wijst www vaak met een CNAME naar de dienst en de kale naam met een A-record naar een adres dat de dienst opgeeft (les 3.2 legt uit waarom).
Het certificaat hoort er ook bij
Een browser toont alleen een slotje als de server een certificaat heeft voor precies de naam die de bezoeker typte. Een certificaat voor example.com dekt www.example.com niet automatisch. Zorg dus dat het certificaat beide namen bevat.
Dat heeft een gevolg voor doorsturen: een bezoeker die https://example.com opent, krijgt eerst een certificaatcontrole en pas daarna de doorsturing. Zonder geldig certificaat voor de kale naam ziet hij een waarschuwing, ook al stuur je hem daarna netjes door. Ook de naam die alleen doorstuurt, heeft dus een certificaat nodig.
Gratis certificaten zoals die van Let's Encrypt controleren of de naam echt naar jouw server wijst. Wijst de DNS nog naar een oude server, dan lukt de aanvraag niet. Eerst de DNS, dan het certificaat.
In de praktijk: zo ziet het eruit in een paneel
Als voorbeeld gebruiken we DirectAdmin. In cPanel, Plesk en andere panelen heet het onderdeel vaak "Redirects" of "Doorsturen".
- Open Site Omleiden (doorsturen).
- Vul het pad in dat doorgestuurd moet worden, bijvoorbeeld
/voor de hele site. - Kies het type: 301 voor permanent.
- Vul het doeladres in, met
https://. - Sla op.
De DNS van de naam moet daarvoor naar je eigen hosting wijzen. Wijst hij naar een andere dienst, dan komt de bezoeker nooit bij deze doorsturing aan.
Samenvatting
- DNS geeft alleen het adres van een naam. Pad, protocol en parameters ziet de DNS niet.
- Doorsturen (301, 302) en domeinpointers regelt de webserver, niet de DNS.
- Zorg dat zowel de kale naam als www een record hebben, en kies één als hoofdadres.
- Een certificaat moet elke naam dekken die een bezoeker kan typen, ook de naam die alleen doorstuurt.
- Eerst de DNS goed, dan het certificaat.
Quiz
Opdracht
Opdracht Z3.4: www: CNAME of A? Hoe is www.sidn.nl in de DNS ingericht? Zoek op welk record er voor www.sidn.nl staat en vul het type in (A, AAAA of CNAME) en de waarde. Tip: vraag eerst naar een CNAME.
Er is bij deze les geen instelopdracht in de oefenzone: doorsturen gebeurt op een webserver, niet in de DNS.
Verder lezen
Deze artikelen beschrijven de stappen in de panelen van WebOké; in andere panelen werken ze vergelijkbaar.
- DirectAdmin handleiding 4.7: Site Omleiden: een domein of pagina doorsturen
- DirectAdmin handleiding 4.4: Domeinpointers: een tweede domeinnaam voor dezelfde site
- Doorsturing naar een ander domein aanmaken (hostingpakket)
- Domeindoorsturing/redirect aanmaken (domeinregistratie)
- DirectAdmin handleiding 6.3: Certificaat voor www, subdomeinen en wildcard
