Før du starter: kartlegg det du har

De fleste problemer ved flytting skyldes noe som ble glemt: en cron-jobb, en e-postkonto eller en underdomene-oppføring. Bruk en time på å notere alt før du rører noe.

  • Hvilke domener og underdomener peker til webhotellet?
  • Hvilken PHP-versjon og hvilke utvidelser bruker siden?
  • Hvilke databaser finnes, og hvor store er de?
  • Finnes det cron-jobber, .htaccess-regler eller omdirigeringer?
  • Hvor ligger e-posten – på webhotellet eller hos en egen e-postleverandør?
  • Hvem har tilgang til DNS-innstillingene for domenet?

Steg 1: Senk TTL på DNS

TTL (time to live) styrer hvor lenge andre DNS-servere husker hvor domenet ditt peker. Står den på et døgn, kan det ta et døgn før alle ser den nye serveren. Senk TTL på A- og AAAA-postene til for eksempel 300 sekunder minst ett døgn før flyttingen. Da tar selve byttet bare minutter.

Steg 2: Gjør klar den nye serveren

Installer det siden trenger. På en Webber-server kan du bruke ett-klikks apper som WordPress, LEMP (Nginx + PHP + MariaDB) eller LAMP (Apache + PHP + MariaDB) – velg LAMP hvis siden er avhengig av .htaccess. Legg deretter til domenet i kontrollpanelet under domener og SSL, og velg webserver.

Lurer du på om VPS er riktig steg for deg, kan du lese VPS eller webhotell? først.

Steg 3: Kopier filer og database

Filer

Har webhotellet SSH-tilgang, er rsync det raskeste og tryggeste. Kommandoen kan kjøres flere ganger – andre gang kopieres bare det som er endret:

Kopier filer med rsync
rsync -avz --progress bruker@webhotell.no:public_html/ /var/www/eksempel.no/
sudo chown -R www-data:www-data /var/www/eksempel.no

Har du bare FTP, kan du laste ned filene med et FTP-program og laste dem opp med SFTP til den nye serveren.

Database

Eksporter databasen fra webhotellet, enten via phpMyAdmin eller med mysqldump hvis du har SSH. Les den så inn på den nye serveren:

Flytt MariaDB/MySQL-databasen
# På webhotellet
mysqldump --single-transaction -u bruker -p minbase > minbase.sql

# På den nye serveren
sudo mysql -e "CREATE DATABASE minbase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
sudo mysql -e "CREATE USER 'minbruker'@'localhost' IDENTIFIED BY 'sterkt-passord';"
sudo mysql -e "GRANT ALL ON minbase.* TO 'minbruker'@'localhost';"
sudo mysql minbase < minbase.sql

Oppdater konfigurasjonsfilen (for eksempel wp-config.php) med nytt databasenavn, bruker og passord. Databasen skal bare være tilgjengelig lokalt – den trenger ingen åpning i brannmuren.

Steg 4: Ikke glem e-posten

På mange webhotell er e-post og nettside i samme pakke. Det er to ting å holde fra hverandre:

  • Innbokser (mottak av e-post). Ligger e-postkontoene på webhotellet, må de flyttes til en e-postleverandør før du sier opp webhotellet. MX-postene for domenet skal peke dit – ikke til VPS-en. Webber tilbyr ikke innbokser.
  • Utgående e-post fra nettsiden. Kontaktskjema, ordrebekreftelser og passordtilbakestilling sendes fra serveren. Her er Webbers administrerte SMTP-server inkludert. Legg til avsenderdomenet i panelet, og legg inn SPF-, DKIM- og DMARC-postene panelet viser, så havner ikke e-postene i søppelpost.

Pass på at SPF-posten tar med både e-postleverandøren og SMTP-serveren hvis begge sender på vegne av domenet. Det skal bare finnes én SPF-post per domene.

Steg 5: Test før du bytter DNS

Du kan se nettsiden på den nye serveren før resten av verden gjør det, ved å legge domenet inn i hosts-filen på din egen maskin:

Pek domenet lokalt til den nye serveren
# Mac/Linux: /etc/hosts   Windows: C:\Windows\System32\drivers\etc\hosts
203.0.113.25  eksempel.no www.eksempel.no

Bytt ut IP-adressen med serverens adresse. Klikk deg gjennom de viktigste sidene, logg inn i administrasjonen, test skjemaer og en testordre. Husk å fjerne linjen fra hosts-filen etterpå.

Steg 6: Bytt DNS og følg med

  1. Kjør rsync og databaseeksporten en siste gang, slik at du får med de nyeste endringene.
  2. Endre A- og AAAA-postene til verdiene panelet viser. Se guiden pek domene til VPS for detaljer.
  3. Vent til panelet har verifisert DNS. Agenten på serveren setter da opp vhost og SSL automatisk.
  4. Sjekk at nettsiden svarer på HTTPS, og at skjemaer og e-post fungerer.
  5. Behold webhotellet noen dager som reserve før du sier det opp.

Etterarbeid

  • Sett TTL tilbake til en normal verdi når alt er stabilt.
  • Legg inn cron-jobber som fantes på webhotellet.
  • Ta et manuelt snapshot av den ferdige serveren, så har du et kjent godt utgangspunkt.
  • Gå gjennom brannmurreglene og fjern porter du ikke bruker.

Alle Webber-servere har drift inkludert, så driftsteamet kan hjelpe med oppsett av webserver, domener og SSL underveis. Se hva drift innebærer og priser.

Ofte stilte spørsmål

Blir nettsiden nede når jeg flytter?

Normalt ikke. Senker du TTL i forkant og tester via hosts-filen, kan du bytte DNS når alt fungerer, og byttet slår igjennom i løpet av minutter.

Kan jeg flytte e-postkontoene til Webber?

Nei. Webber tilbyr administrert SMTP for utgående e-post fra nettsider og apper, ikke innbokser. E-postkontoer bør flyttes til en egen e-postleverandør.

Hjelper Webber med flyttingen?

Oppsett av webserver, domener og SSL er en del av driften, og driftsteamet hjelper gjerne til. Selve applikasjonen og innholdet er ditt ansvar.

Hva gjør jeg hvis siden bruker .htaccess?

Velg Apache som webserver når du legger til domenet, eller installer LAMP-stakken med ett klikk. Apache leser .htaccess-filer.

Les også