Je website verhuizen zonder brokken

Een website verhuizen lijkt eenvoudig. Maar als je het goed wil doen, moet je toch opletten.

Een website verhuizen lijkt eenvoudig. Wil je het goed doen? Dan moet je toch opletten of je zit al snel met lange downtimes of dubbele online bestellingen... Bij Level27 is een naadloze verhuis van je website een cruciaal onderdeel van onze dienstverlening. Daarom willen we graag met jou delen hoe wij dit precies aanpakken. We maken je wegwijs met volgend technisch stappenplan!

Stap 1: inventaris

Zoals met alles is de planning het halve werk. Stel je dus de volgende vragen en noteer het antwoord:

  • Is er toegang mogelijk tot de website? We hebben het dan niet alleen over het aanmelden op de website, maar ook over SFTP- en databasegegevens. Of misschien werkt de huidige hoster nog met FTP?
  • Welk type website is het? Een statische site of een site met dynamische inhoud?
  • In geval van een dynamische site: hoe frequent wijzigt de inhoud? Is het voldoende om enkele uren geen inhoud te wijzigen of moeten de gegevens realtime overgezet worden?
  • Welke softwareversies staan er op de server? Kan de website overweg met nieuwe versies van bv. PHP?
  • Zijn er gegevens voorhanden over de belasting van de website? Bijvoorbeeld met Google Analytics of New Relic.

Stap 2: eerste overzetting & testfase

Op basis van bovenstaande inventaris bereiden we de nieuwe locatie voor. Daarbij bepalen we de softwareversies en infrastructuur die nodig zijn voor een goede overname van de website. Daarna zetten we deze infrastructuur klaar (klein of groot) en maken we een eerste kopie van de website. We geven daarbij de voorkeur aan volgende methode:

  • Rsync en SSH: een veilige en gebruiksvriendelijke manier om bestanden tussen 2 locaties te synchroniseren
  • Mysqldump om een kopie te maken van de huidige database

Met beide methodes komen we een heel eind ver, want dit laat ons toe om de volledige verhuis te automatiseren. De voorwaarde is wel dat de oude locatie SSH toelaat, wat helaas niet altijd het geval is.
Als de oude locatie enkel FTP ondersteunt, gebruiken we al eens LFTP in combinatie met een eenvoudig Shell-scriptje:

#!/bin/bash

# Parameters
HOST="ftp.oudelocatie.be"
USER="gebruikersnaam"
PASS="wachtwoord"
LCD="/var/web/vdXXXX/public_html"
RCD="/public_html"
DELETE="--delete"

# Do the actual sync
lftp -c "set ftp:list-options -a;
open ftp://$USER:$PASS@$HOST;
lcd $LCD;
set ftp:ssl-allow false;
mirror $RCD $LCD $DELETE --verbose "

In deze fase doen we een eerste synchronisatie van de bestanden, kopiëren we de database en testen we de site op een tijdelijk adres. Dit is bijzonder belangrijk om te checken of de site nog zal werken na de overzetting. Hoe meer we testen, hoe minder verrassingen tijdens de echte overzetting. Bij grote websites (met veel bestanden) zal dit de fase zijn die het meeste tijd in beslag neemt.

Stap 3: overzetting bestanden & doorverwijzing website

Daarna is het tijd voor de effectieve overzetting, een cruciale fase die we zo kort mogelijk proberen te houden.

In deze stap doen we een laatste synchronisatie van de bestanden. Dit duurt maar eventjes, want het gaat enkel om gewijzigde bestanden. Ook de database zetten we nogmaals over, zodat we zeker zijn dat we de laatste gegevens mee hebben.

Dynamische websites (zoals webshops) schakelen we tijdens deze laatste databasesynchronisatie uit op de oude locatie om problemen te voorkomen. Dat doen we door het CMS in onderhoudsmodus te plaatsen of door de website door te verwijzen naar een lege pagina die meedeelt dat de website eventjes offline is. Zo vermijden we o.a. dat een bezoeker op de oude locatie nog een bestelling aan het afronden is die nadien niet overgezet wordt naar de nieuwe locatie.

Is de database overgezet, dan is het een goed idee om nog een omleiding te installeren op de oude locatie. Zoals je in stap 4 zal kunnen lezen, duurt het immers enkele uren voordat je IP-adres gewijzigd is.

Met een omleiding loods je al het verkeer door naar de nieuwe server. In Apache kan je dat bijvoorbeeld zo doen:

<VirtualHost *:80>
   ServerAlias jouwsite.be
   ServerAlias www.jouwsite.be

    ProxyRequests off
    ProxyPreserveHost On

    ProxyPass / http://NIEUW_IP_ADRES/
    ProxyPassReverse / http://NIEUW_IP_ADRES/

<proxy>
     Require all granted
</proxy>

</VirtualHost>

Stap 4: verhuis IP-adres

Nadien verplaatsen we het adres van de website van de oude naar de nieuwe locatie. Dit houdt in dat we het IP-adres wijzigen. Het IP-adres is een unieke code van de server waarop je website staat en is te vergelijken met een telefoonnummer. Als iemand de naam van je website opzoekt, wordt dit omgezet naar een IP-adres via DNS. Het is deze omzetting die we moeten veranderen als we de website verhuizen. Deze wijziging realiseer je in het controlepaneel van de provider die het DNS-beheer voor je regelt. Het nieuwe IP-adres hangt vast aan de nieuwe server en dat ontvang je dus van de nieuwe serverbeheerder.

Let op! Een DNS-wijziging kan tot 24 uur duren, afhankelijk van de instellingen van je DNS-beheerder. Je kan deze tijd verkorten door de TTL (Time To Live) van het domein korter te zetten, maar je moet toch altijd rekening houden met een periode van minstens 1 uur. Daarom is het voor belangrijke websites raadzaam om te werken met een omleiding, zoals reeds vermeld.

Maak je je zorgen over het feit dat een wijziging in je IP-adres nadelige gevolgen kan hebben voor je SEO-ranking, dus de manier waarop je in Google scoort? Niemand (behalve Google zelf) kan je hierop een sluitend antwoord geven. Onze ervaring leert dat een wijziging van IP-adres op zich geen verandering meebrengt in je ranking, maar alle andere factoren die ook mee veranderen (o.a. je hostingaanbieder) kunnen wél een invloed hebben. Stond je server bijvoorbeeld voordien in België en nu in de VS, dan kan dat een negatief effect hebben. Of verhuist je website van een trage naar een snelle server die heel wat performantietechnieken toepast, dan gaat je ranking wellicht de hoogte in.

Na de DNS-wijziging komen alle bezoekers rechtstreeks terecht op de nieuwe locatie:

Stap 5: opruiming & optimalisatie

Ook na de verhuis is er nog werk aan de winkel. Dit zijn onze aanraders:

  • Maak een backup van de volledige server op de oude locatie en bewaar deze op een veilige plaats.
  • Zeg de webruimte netjes op bij de oude leverancier.
  • Zet de TTL van je domein terug op een hogere waarde.
  • Start de optimalisatie: Varnish, Page Speed, New Relic, ...

Nog vragen? Neem contact met ons op, wij zijn er altijd om je te helpen!

Vragen of opmerkingen?

Laat het ons zeker weten via onze chatbox!
We helpen je graag verder.

Deel deze blog via