Module 9 · 9.5
Een WordPress-site verhuizen
Module 9: E-mail, vindbaarheid, AVG, onderhoud en verhuizen · Leestijd: 10 minuten
Leerdoel: Na deze les kun je een WordPress-site naar een andere hosting of een ander domein verhuizen zonder storing.
Kernbegrippen: verhuizen naar andere hosting, verhuizen naar ander domein, installer-import, migratieplugin, verhuizen met de hand, zoeken en vervangen, testen vóór de DNS-wissel, hosts-bestand, TTL, inhoudsstop, laatste synchronisatie, controles na de wissel, adreswijziging in Search Console
Twee soorten verhuizing
Er zijn twee verhuizingen, en ze zijn verschillend:
- Naar een andere hosting, hetzelfde domein. De site gaat van server A naar server B; het adres blijft
https://example.com. De DNS gaat aan het eind om. Er hoeft niets in de database te veranderen. - Naar een ander domein. De site gaat van
example.comnaarexample.net(op dezelfde of een andere hosting). Alle adressen in de database veranderen, en je moet het oude domein laten doorsturen.
Soms doe je beide tegelijk. Splits het dan liefst: eerst verhuizen naar de nieuwe hosting, dan pas het domein wijzigen. Zo weet je bij een probleem welke stap het was.
En vergeet niet wat er naast WordPress staat: e-mail op het domein, DNS-records, cronjobs, andere sites in hetzelfde pakket. Die verhuizen niet vanzelf mee (DNS-cursus les 6.3).
Drie manieren om de site over te zetten
| Manier | Hoe | Let op |
|---|---|---|
| Installer-import | Veel installers (Installatron, Softaculous) kunnen een site van een andere server ophalen met de FTP- of SFTP-gegevens van de oude hosting | Snel, en de site staat daarna meteen in je installer (les 2.2) |
| Migratieplugin | Een plugin maakt op de oude site een pakket (bestanden en database) en zet het op de nieuwe neer, vaak met het omzetten van de adressen | Sommige gratis versies hebben een maximale grootte; grote uploads kunnen op time-outs stuiten |
| Met de hand | Bestanden kopiëren (SFTP of zip), database exporteren en importeren, wp-config.php aanpassen, bij een nieuw domein zoeken en vervangen | Meeste werk, maar je ziet elke stap en het werkt altijd |
Met de hand gaat het zo:
- Bestanden: download de hele webmap (of maak er een zip van via Bestandsbeheer) en zet hem in de webmap op de nieuwe hosting.
- Database: exporteer hem op de oude hosting (phpMyAdmin of
wp db export), maak op de nieuwe een lege database met een eigen gebruiker (les 2.3) en importeer hem (les 8.2). - wp-config.php: zet de nieuwe databasenaam, gebruiker, wachtwoord en host erin. Controleer het tabelvoorvoegsel.
- Nieuw domein? Zoek en vervang de adressen met een hulpmiddel dat geserialiseerde gegevens begrijpt (les 3.2):
wp search-replace 'https://example.com' 'https://example.net' --all-tables --dry-run
wp search-replace 'https://example.com' 'https://example.net' --all-tables- Certificaat op de nieuwe hosting (zodra de DNS wijst, of eerder als de hoster dat kan).
Sommige hosters verhuizen je site gratis of tegen betaling voor je; ook WebOké biedt dat aan. Vraag dan welke van de stappen in deze les ze doen en welke jij zelf moet controleren.
Testen vóór de DNS-wissel
Het belangrijkste principe van een verhuizing zonder storing: de nieuwe site werkt al voordat iemand erheen gaat. Je test hem op de nieuwe hosting terwijl de DNS nog naar de oude wijst. Twee manieren (les 2.1):
- Het hosts-bestand op je eigen computer: zet daarin het IP-adres van de nieuwe server bij je domein. Alleen jouw computer gaat dan naar de nieuwe site. Het certificaat is daar soms nog niet; accepteer de waarschuwing alleen voor deze test.
- Een testadres of voorvertoning van je nieuwe hoster, die je site onder het echte domein laat zien zonder de DNS te veranderen (bij WebOké "Test je website voor verhuizing").
Loop de controlelijst uit les 8.2 na: pagina's, afbeeldingen, inloggen, formulieren, winkel, permalinks.
De wissel plannen
Een paar dagen vooraf:
- Verlaag de TTL van de records die je gaat wijzigen (A, AAAA, www) naar bijvoorbeeld 300 seconden, zodat de wissel straks snel overal zichtbaar is (DNS-cursus les 6.1). Doe dat minstens de oude TTL vooraf.
- Maak een back-up van de oude site (les 8.1) en bewaar hem buiten beide hosters.
- Zet de mail klaar als die ook verhuist: mailboxen aanmaken, mail overzetten, MX-records klaar (DNS-cursus les 6.3).
Op de dag van de wissel:
- Inhoudsstop: vanaf nu wordt er op de oude site niets meer gewijzigd. Bij een webwinkel: kies een rustig moment en zet de winkel even in onderhoud, anders komen er bestellingen binnen op de oude site die je kwijt bent.
- Laatste synchronisatie: zet de database (en nieuwe uploads) van de oude site nog één keer over naar de nieuwe, zodat alles van de laatste dagen erin zit.
- DNS omzetten: A- en AAAA-record (en www) naar het nieuwe IP-adres. Ruim een oude AAAA op (les 2.1).
- Certificaat aanvragen op de nieuwe hosting zodra de DNS wijst.
- Controleren met de opdracht van deze les en de controlelijst.
Daarna:
- Laat de oude hosting nog een paar dagen staan (met de site in onderhoud of alleen-lezen), voor bezoekers die nog het oude adres in hun cache hebben, en als terugvaloptie.
- Controleer permalinks (één keer opslaan bij Instellingen > Permalinks als pagina's een 404 geven), cache (legen), cronjobs en WP-Cron (les 6.3), en mail vanuit de site (les 9.1, SPF moet nu de nieuwe server noemen).
- Zet de TTL weer hoger.
- Pas na een week of twee: oude hosting opzeggen, nadat je nog een laatste back-up hebt gedownload.
Bij een nieuw domein: doorsturen
Verhuis je naar een ander domein, dan moet het oude domein blijven bestaan en doorsturen: elk oud adres met een 301 naar hetzelfde pad op het nieuwe domein (https://example.com/contact/ naar https://example.net/contact/), niet alles naar de homepage. Daarmee behoud je bezoekers van oude links en je plek in zoekmachines (les 9.2).
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^(.*)$ https://example.net/$1 [R=301,L]Houd het oude domein (en een certificaat erop) nog jaren aan. Meld de verhuizing in Google Search Console met de functie voor adreswijziging, en dien de nieuwe sitemap in.
Samenvatting
- Verhuizen naar andere hosting (zelfde domein) en naar een ander domein zijn verschillende klussen; splits ze als je beide doet.
- Zet de site over met een installer-import, een migratieplugin of met de hand (bestanden, database, wp-config.php, bij nieuw domein zoeken en vervangen).
- Test de nieuwe site vóór de DNS-wissel via het hosts-bestand of een testadres.
- Verlaag vooraf de TTL, houd een inhoudsstop, synchroniseer een laatste keer, zet de DNS om en controleer permalinks, cache, cron en mail.
- Bij een nieuw domein: elk oud adres met een 301 naar hetzelfde pad op het nieuwe domein, en een adreswijziging in Search Console.
Quiz
Opdracht
Opdracht A9.5: Is de verhuizing gelukt? Na een verhuizing vul je je domein in, het IP-adres (of de servernaam) van de nieuwe hosting, en bij een domeinwijziging ook het oude domein. Het programma controleert: wijzen de kale naam en www (A en AAAA) naar de nieuwe server, is het certificaat geldig voor beide namen, wijst de REST-verwijzing van de site naar het juiste domein (siteurl goed omgezet), komt het oude domein niet meer voor in de links en bronnen van de homepage, en stuurt het oude domein (indien opgegeven) met een 301 door naar hetzelfde pad op het nieuwe?
Opdracht D9.5: Je verhuisdraaiboek. Schrijf een draaiboek voor het verhuizen van je eigen site (ook als je dat nu niet van plan bent): welke soort verhuizing, welke manier van overzetten, wat er naast WordPress mee moet (mail, DNS-records, cronjobs), hoe je test vóór de wissel, de tijdlijn (dagen vooraf, de dag zelf, de dagen erna) met per stap wie het doet, en hoe je terug kunt als het misgaat. Vink aan dat je de huidige TTL van je A-record hebt opgezocht en noteer die.
Opdracht D9.5: Je verhuisdraaiboek
Deze opdracht doe je zelf; niemand kijkt hem na. Vink af wat je gedaan hebt en markeer de opdracht als gedaan.
Verlaag de TTL een paar dagen vooraf, spreek een inhoudsstop af met een laatste synchronisatie vlak voor de wissel, en vergeet mail en de overige DNS-records niet.
Je vinkjes en aantekeningen blijven alleen in deze browser; we sturen ze nergens heen. Ben je aangemeld, dan bewaren we in Mijn cursussen alleen dat je de opdracht gedaan hebt.
Verder lezen
Deze artikelen beschrijven de stappen in de panelen van WebOké; in andere panelen werken ze vergelijkbaar.
- Een bestaande website importeren in Installatron
- DirectAdmin handleiding 13.4: Een bestaande website importeren in Installatron
- Mijn website doet het niet na het uploaden of verhuizen
- Domein, website en e-mail samen verhuizen zonder storing: het stappenplan
- DirectAdmin handleiding 18.8: Mijn website testen voordat het domein verhuisd is
- WebOké handleiding 14.2: Je website testen vóór een verhuizing
- DirectAdmin handleiding 12.4: Een database exporteren
- Gratis DNS-cursus 6.3: DNS bij een verhuizing
- WordPress verhuizen (developer.wordpress.org, Engels): https://developer.wordpress.org/advanced-administration/upgrade/migrating/
