Het veilig migreren van websites
From XLS Hosting Wiki
Om een website te verhuizen met zo min mogelijk downtime en in een zo kort mogeljke tijd zijn er een aantal aandachtspunten die we hier zullen behandelen.
Server / Account inrichten
Wanneer er een actieve website of e-mailaccounts wordt verhuist, dan is het zaak eerst de destination-machine in te richten. Houdt hier rekening met databases die veel updates hebben.
Databases
Een goede manier om te gebruiken met databases is wanneer het domein en account is ingericht op de desitination om op de in het source-account (waar de site nu staat) de database al vanaf de destination te draaien. Maak daarvoor een export / import op een rustig tijdstip (of zet het even stil vanwege onderhoud), zorg er voor op de in het destination-account dat de database user connectie mag maken vanaf het ip van het source-account.
PHP / MySQL versies & modulen
Het beste scenario is er één waarbij de destination niet verschilt van de source qua web-software. Het zou kunnen dat er Minor-versie verschillen zijn, bijv. PHP 4.4.7 en PHP 4.4.8, maar Major-versie verschillen kunnen voor problemen zorgen. Dit is zeker het geval bij MySQL: veel queries die goed gaan bij MySQL 4.x worden niet meer geaccepteerd door MySQL 5.x Kijk ook of er bijzondere (o.a.) PHP / PECL / pSQL / Apache modulen of optimizers als ionCube aanwezig zijn op de source en destination.
Testen
Om het zekere voor het onzekere te nemen is het zaak de site goed te testen. Hierdoor komen zaken naar boven waar niet aan gedacht is, of komen er subtiele configuratieverschillen aan het licht. Een goede methode om te testen is gebruik te maken van het hosts file. Verderop wordt dit verder belicht.
E-mail accounts
Maak alle e-mailadressen die u nodig heeft aan op de nieuwe server. Indien dat al niet standaard gebeurd is, zet het catch-all address uit, dit is namelijk een enorme spam-magneet. Het nieuwe account kunt u testen door in te loggen via de webmail, of in uw locale email-client (Outlook, ThunderBird) een account aan te maken waarbij als inkomende server het IP-Address van de destination gezet wordt.
Afronden
Wanneer alle domeinzaken in orde zijn, en de websites zijn overgezet en getest dan kan het domein worden overgezet.
DNS omzetten
U kunt er door het aanpassen van de TTL (Time To Live) voor zorgen dat de domeinnamen niet te lang in dns caches blijft hangen. Mogelijke bezoekers en verzenders van email worden dan snel op de hoogte gebracht van de nieuwe locatie van uw website. Om er voor te zorgen dat de nieuwe DNS-informatie snel wordt meegenomen in de DNS-caches is het aan te raden om de TTL voor het domein op 300 te zetten (TTL records zijn in seconden).
Wanneer u zelf geen controle heeft over de DNS kunt u de huidige provider vragen hieraan aan de TTL wijziging. Let er wel op dat het verwerken van een TTL wijziging even lang zal duren als de vorige TTL duurt. Dit kan 24 uur zijn.
Als de TTL naar wens is dan kan u de DNS van het domein omzetten naar de nieuwe website locatie.
Verhuizing inzetten
Nu alles in orde is kunt u eventueel het domein verhuizen [ link naar andere artikel]
Testen met het hosts file
Een goede manier van het testen van een website die net is gemigreerd is door gebruik te maken van de hosts file. Hiermee kunt u een website bezoeken zonder dat de DNS al naar de website hoeft te verwijzen.
Windows
edit de file met Notepad C:\WINDOWS\system32\drivers\etc\hosts
OSX / Linux
edit als root in een terminal de file /etc/hosts
in OSX roep vind u Terminal.app in Applications > Utilities > Terminal.
Voer hier vervolgens in
(op 1 regel):
10.0.0.1 domeinnaam.nl www.domeinnaam.nl
waarbij 10.0.0.1 het IP van de destinatie en domeinnaam.nl de domeinnaam die u wilt testen
Gooi nu de Cache van de browser leeg en flush uw locale DNS cache
Windows
Roep met start > run > cmd een commandline op en tik hierin:
ipconfig /flushdns
Linux
herstart de nscd daemon door in een terminal (op 1 regel)te tikken:
/etc/rc.d/init.d/nscd ¬
restart
OSX
Tik in een terminal de volgende regel:
OSX voor 10.5:
lookupd -flushcache
OSX vanaf 10.5:
dscacheutil -flushcache
Ten slotte
Herstart nu uw browser en surf naar het te testen domein.
Om er zeker van te zijn dat u op de goede server zit kan u iets aan de website veranderen. Of gebruik Firefox in combinatie met de Add-On ShowIP, dit laat u rechts onderin uw statusbar het IP zien van de site waar u naartoe surft.
Om er voor te zorgen dat u weer naar de oude server kan surfen, haalt u de regel uit uw hosts file, leegt u de cache van uw browser, flusht u de locale DNS cache en herstart u de browser.
