Home - WordPress back-up en migratie: de complete gids
Op deze pagina

WordPress back-up en migratie: de complete gids

Foto van David Ladiges
David Ladiges
Technical Lead
WordPress back-up en migratie: de complete gids
WordPress back-up en migratie: de complete gids

Je site is na een update of hack ineens weg, of je wilt naar een andere hostingpartij, en pas dan vraag je je af of je back-up eigenlijk werkt. Een WordPress back-up is een volledige kopie van je database en bestanden, waarmee je je site na een fout of hack herstelt. Migreren is die kopie overzetten naar een andere server of domein. Zonder werkende back-up geen veilige migratie. In deze gids leg ik uit wat een back-up precies is, hoe je hem maakt, bewaart, test en terugzet, en hoe je je site daarna veilig verhuist. Per onderwerp verwijs ik door naar het artikel waarin we dieper ingaan op de details.

Back-up, export, migratie en kloon: wat is het verschil?

Een back-up is een complete kopie van je site, database én bestanden, op één bepaald moment. Een XML-export is alleen je content in een tekstbestand. Een migratie is het overzetten van je complete site naar een andere server of een ander domein. Een kloon is een werkende kopie van je site op dezelfde hosting, die je bijvoorbeeld als staging-omgeving gebruikt om updates te testen. In supportvragen zie ik deze vier begrippen geregeld door elkaar lopen, en dat is precies waar het misgaat.

BegripWat het bevatWaarvoorWat het niet is
Back-upDatabase en bestanden van één momentHerstel na fout, hack of mislukte updateGeen bescherming tegen een lek dat er nog in zit
XML-exportBerichten, pagina’s, reacties en menu’sContent overzetten naar een andere WordPress-siteGeen back-up, want thema, plugins, instellingen en mediabestanden ontbreken
MigratieDe complete site, verplaatstVerhuizen naar andere hosting of een ander domeinGeen kopie die achterblijft, daarom eerst een back-up
Kloon of staging-omgevingWerkende kopie op dezelfde hostingUpdates testen en hersteltests doenGeen back-up, want hij staat op dezelfde server

De meeste verwarring komt van de exportfunctie onder Extra > Exporteren. Die klinkt als een back-up, maar is het niet. Je krijgt een XML-bestand met je teksten, en zonder je thema, plugins en instellingen kun je daar geen werkende site mee terugzetten. Waar de export wel goed voor is, lees je in WordPress-site exporteren met de XML-exportfunctie. Hoe je een testkopie maakt, staat bij de staging-omgeving.

Wat zit er in een volledige WordPress back-up?

Een volledige WordPress back-up bestaat uit twee delen, de database en de bestanden. In de database staan je berichten, pagina’s, instellingen en gebruikers, en bij een webshop ook je orders en klanten. De bestanden zitten vooral in de map wp-content, met je thema’s, plugins en uploads zoals afbeeldingen en pdf’s. Daarbij horen nog wp-config.php, met de gegevens waarmee WordPress verbinding maakt met de database, en .htaccess met je serverregels.

WordPress-core zelf hoeft strikt genomen niet mee, want die download je zo opnieuw. Meenemen kan geen kwaad. Wat wel misgaat, is een back-up met alleen de database of alleen de bestanden. Dat is een halve back-up, en met een halve back-up herstel je geen complete site. Belangrijk is ook dat beide delen van hetzelfde moment zijn. Ik noem dat een back-upset, en dat begrip komt verderop terug bij het terugzetten.

Zo maak je een WordPress back-up: drie routes

Een WordPress back-up maken kan via je hosting, met een back-upplugin of handmatig. Mijn advies is om minimaal één route automatisch te laten lopen en daarnaast één kopie buiten je hosting te bewaren. Dan heb je een echt vangnet en niet alleen een gevoel van veiligheid.

Via je hosting

Een hostingback-up maakt je hostingpartij automatisch, buiten je WordPress-installatie om. Dat is de route die ik iedereen als basis aanraad, omdat je hem ook kunt terugzetten als WordPress zelf niet meer laadt. Het nadeel is dat alles bij dezelfde partij staat als dit je enige kopie is. Vraag je host daarom hoe vaak er een back-up wordt gemaakt, hoe lang die bewaard blijft en in welk datacenter hij staat. Een goede hostingpartij heeft op die drie vragen een concreet antwoord.

Met een back-upplugin

Een back-upplugin maakt vanuit WordPress een kopie en zet die bij voorkeur in externe cloudopslag. Bekende voorbeelden zijn UpdraftPlus, Duplicator en All-in-One WP Migration, en welke functies gratis zijn verschilt per plugin. De kracht zit in die externe opslag, want daarmee heb je een kopie buiten je hosting. Het zwakke punt is dat de plugin op dezelfde server draait als je site. Ligt de site plat, dan werkt de plugin ook niet, en grote sites lopen nogal eens tegen limieten van geheugen of bestandsgrootte aan.

Handmatig

Handmatig back-uppen betekent dat je zelf de bestanden downloadt via SFTP of bestandsbeheer en de database exporteert via phpMyAdmin of met wp db export in WP-CLI. Dat is foutgevoelig en het gebeurt nooit vanzelf. Ik doe het alleen als eenmalige extra kopie vlak voor een grote wijziging, en ik raad het vooral ontwikkelaars aan.

Hoe vaak en waar bewaar je je back-ups?

Hoe vaak je een back-up maakt, stem je af op hoe vaak je site verandert. Een rustige bedrijfssite kan met een wekelijkse back-up toe, een actieve site met dagelijkse en een webshop eigenlijk nog vaker. Los daarvan maak je altijd een extra back-up vlak voor een update of verhuizing. Voor de opslag hanteer ik de 3-2-1-regel, die zegt dat je drie kopieën hebt, op twee soorten opslag, waarvan één buiten je hosting. Bewaar daarnaast meerdere herstelpunten over een langere periode, bijvoorbeeld dagelijkse, wekelijkse en maandelijkse. Een hack ontdek je namelijk vaak pas na weken, en dan wil je ver genoeg terug kunnen. Kijk ook af en toe of je automatische back-ups echt draaien. Meer hierover in hoe vaak je een back-up maakt en de 3-2-1-regel.

Wat vaak vergeten wordt, is dat back-upbestanden gevoelige data zijn. Ze bevatten wp-config.php met je databasewachtwoord en bij een webshop ook klant- en ordergegevens. Laat een back-up dus nooit als zip in de openbare webmap staan, want dan kan iedereen die de bestandsnaam raadt hem downloaden. Bewaar back-ups versleuteld en bij voorkeur binnen de EU. Onder de AVG ben jij verantwoordelijk voor die persoonsgegevens, ook als ze in een back-up staan.

Een back-up terugzetten en vooraf testen

Een back-up terugzetten doe je door bestanden en database uit hetzelfde herstelpunt terug te zetten, waarna je de permalinks opnieuw opslaat en de cache leegt. Welk herstelpunt je kiest en wat je daarna controleert, lees je in back-up terugzetten. Belangrijker vind ik wat je doet voordat het zover is. Een back-up die je nooit hebt teruggezet, is een aanname, net zoals een verzekering pas iets waard is als de polis nog loopt. Daarom doe ik elk kwartaal een hersteltest.

  1. Kies een willekeurige back-up, niet steeds de nieuwste.
  2. Zet hem terug op een kopie van je site, bijvoorbeeld een kloon in Installatron.
  3. Controleer inloggen, de homepage, een formulier, de mediabibliotheek en bij een webshop de laatste orders.
  4. Noteer de datum en het resultaat, zodat je ziet of er iets verandert.

Terugzetten is overigens niet altijd de oplossing. Bij een hack zet je de malware vaak gewoon mee terug, omdat het lek er nog in zit. Lees dan eerst malware verwijderen, of laat het herstel over aan WordPress gehackt. Na een mislukte update is één plugin uitschakelen vaak genoeg, zie site kapot na een update.

Bij een WooCommerce-webshop ligt het nog gevoeliger. Orders komen continu binnen, dus een dagelijkse back-up kan een hele dag aan bestellingen missen. Zet daarom nooit blind een oude database over een draaiende webshop, maar exporteer eerst de orders van na het herstelpunt. Hoe je dat inricht, staat in WooCommerce back-up. Wil je dat back-ups en hersteltests vast onderdeel zijn van je webshoponderhoud, dan nemen we dat mee binnen WooCommerce beheer.

WordPress migratie: welke route past bij jouw situatie?

Een WordPress migratie is het verplaatsen van je complete site, en welke route je kiest hangt af van wat er verandert. Verhuis je naar andere hosting en blijft je domein hetzelfde, dan verandert alleen de server. Je test de nieuwe omgeving vóór de DNS-wissel en zorgt dat je e-mail meeverhuist. Die route staat stap voor stap in het stappenplan voor het verhuizen van je WordPress-website.

Krijgt je site een ander domein of een andere URL, dan pas je de site-URL aan, vervang je de oude adressen in de database en zet je 301-redirects van oud naar nieuw, zodat bezoekers en Google je terugvinden. Lees daarvoor WordPress-URL veranderen. Verhuis je alleen je domein naar een andere registrar, dan blijft je site staan maar moeten je DNS-records en vooral je MX-records mee, anders stopt je mail. Daarover gaat domein en DNS verhuizen. Zet je een site van een staging-omgeving of je eigen computer live, dan vervang je de test-URL’s en laat je zoekmachines weer toe. En ga je van http naar https, dan draait het om een geldig SSL-certificaat, de juiste site-URL en redirects.

Migreren in vijf fases

Een WordPress-migratie naar andere hosting verloopt in vijf fases, van back-up tot nacontrole. Hieronder staan de hoofdlijnen. De technische stappen per fase vind je in het verhuisstappenplan hierboven.

  1. Maak een volledige back-up en een inventaris van je DNS-records en mailaccounts. Gebruik je e-mail hosting op hetzelfde domein, verhuis de mailboxen dan vóór de domeinwissel, bijvoorbeeld met imapsync of door beide accounts via IMAP in je mailprogramma te koppelen.
  2. Zet de site over naar de nieuwe server, met een migratieplugin of handmatig. Installatron kent ook een importfunctie voor een bestaande installatie; of die bij jouw oude host werkt, check je even bij onze support.
  3. Test de nieuwe site via een tijdelijke URL of je hosts-bestand, terwijl bezoekers nog op de oude site zitten.
  4. Verlaag een dag vooraf de TTL en zet daarna de DNS om, via de A-record of de nameservers.
  5. Controleer SSL, formulieren, e-mail en Google Search Console, en zeg je oude hosting pas na een week op.

Doe je het op deze manier, dan gaat je site tijdens de migratie niet offline. Er zijn wel twee valkuilen die ik vaak tegenkom. De eerste is zoeken en vervangen in de database. WordPress slaat veel instellingen op als geserialiseerde data, en als je daarin met een gewone teksteditor URL’s vervangt, breek je die data. Gebruik dus altijd een tool die dat begrijpt, zoals wp search-replace in WP-CLI. De tweede valkuil zijn webshoporders. Bestellingen die binnenkomen tussen de export en de DNS-wissel gaan verloren. Verhuis een webshop daarom op een rustig moment, pauzeer het bestellen even of zet de database als laatste nog een keer over.

Zelf migreren of laten doen?

Een kleine site zonder webshop verhuizen met een migratieplugin lukt de meeste mensen zelf. Heb je een webshop, meerdere sites, eigen e-mail op het domein of een krappe deadline, dan zou ik het laten doen. Een vergeten MX-record of een fout in de DNS kost je al snel meer tijd dan je had willen besparen. Bij Surver regelt de verhuisservice de hele overstap, gratis bij elk pakket en zonder limiet op het aantal sites of webshops. We verhuizen je website, e-mailaccounts inclusief mappen, DNS-records en domein, en zetten de site-URL en redirects goed. Een webshop staat tijdens de migratie kort in onderhoudsmodus.

Ook voor back-ups hoef je bij ons niet alles zelf te regelen. Bij managed WordPress hosting maken we automatisch dagelijkse, wekelijkse en maandelijkse back-ups, die op externe servers in aparte datacenters binnen Europa staan. Op de shared pakketten zet je ze kosteloos zelf terug via JetBackup 5 in cPanel, los voor bestanden, databases of mailaccounts. Extra back-ups maak je met Installatron, en daar kloon je ook je installatie voor de hersteltest. Eén ding om te onthouden is dat de huidige staat bij terugzetten niet automatisch bewaard wordt, dus maak eerst zelf een back-up. Zit je op Surver Cloud, neem dan contact op met support.

Back-ups zijn één onderdeel van onderhoud. Wil je back-ups, updates en controles liever helemaal uit handen geven, kijk dan naar WordPress onderhoud. Verder lezen kan in deze artikelen.

Veelgestelde vragen

Maakt mijn hosting automatisch een WordPress backup?

Bij de meeste managed hosting wel, maar vraag na hoe vaak, hoe lang ze bewaard blijven en waar ze staan. Bij Surver gebeurt het automatisch, met dagelijkse, wekelijkse en maandelijkse back-ups op externe servers binnen Europa. Een extra kopie buiten je hosting blijft verstandig.

Welke back-upplugin is het beste?

Er is geen beste plugin voor iedereen. Heb je hostingback-ups op externe servers, zoals bij Surver, dan is een plugin vooral nuttig als extra kopie buiten je hosting. Kies er een die naar cloudopslag kan schrijven en test het terugzetten minstens één keer.

Hoe kopieer ik een complete WordPress-site?

Wil je een kopie op dezelfde hosting, maak dan een kloon, bij ons in Installatron. Gaat de site naar een andere server, gebruik dan een migratieplugin of laat de verhuisservice het doen.

Hoe lang duurt een WordPress-migratie?

Het overzetten zelf is bij een gemiddelde site vaak binnen enkele uren klaar. Daarna werkt de DNS-wijziging door, afhankelijk van de TTL. Bij Surver is de standaard-TTL 600 seconden, dus een verlaagde TTL helpt vooral als je oude partij een hogere waarde gebruikt.

Heb je een vraag over je website of hosting?

Ons team staat klaar om je te helpen! Laat je gegevens achter en we nemen vrijblijvend contact op.

Deel dit artikel:

Stel je vraag

Heb je een vraag over je website, hosting of WordPress? Vul je gegevens hieronder in en we nemen zo snel mogelijk contact met je op met een persoonlijk antwoord.

Je hebt geen technische kennis nodig. We denken graag met je mee.

Stel je vraag