Zum Inhalt springen

Eine Website auf einen VPS umziehen: Anleitung Schritt für Schritt

Aktualisiert am 6 Min. LesezeitVom DNSPeek-Team

Um eine Website auf einen VPS umzuziehen, bereiten Sie zuerst den Server vor: Updates, SSH-Schlüssel, eine Firewall und derselbe Web-Stack, auf dem die Website heute läuft. Kopieren Sie Dateien und Datenbank, richten Sie einen Virtual Host für Ihre Domain ein und testen Sie die Website auf der IP des VPS unter ihrer echten Domain, bevor Sie DNS ändern. Stellen Sie mit kurzer TTL um, stellen Sie das Zertifikat aus und belassen Sie die E-Mail bei einem spezialisierten Anbieter statt auf dem VPS.

Was sich ändert, wenn Sie Shared Hosting verlassen

Beim Shared Hosting betreibt der Anbieter Webserver, PHP, Datenbank, E-Mail, Backups und Sicherheitsupdates. Auf einem unverwalteten VPS liegt das alles jetzt bei Ihnen. Der Vorteil sind Kontrolle und planbare Ressourcen; der Preis ist, dass nichts eingerichtet ist, bis Sie es einrichten. Planen Sie den Umzug als zwei Projekte: zuerst den Server aufbauen, dann die Website darauf umziehen.

Shared Hosting im Vergleich mit einem unverwalteten VPS
AufgabeShared HostingUnverwalteter VPS
SicherheitsupdatesHosterSie (oder automatische Updates)
Webserver, PHP, DatenbankVorinstalliertSie installieren und optimieren sie
E-Mail-HostingMeist inklusiveBesser bei einem spezialisierten Anbieter
BackupsOft inklusiveSie richten sie ein, idealerweise außerhalb des Servers
ZertifikateAutomatischCertbot oder ein ähnlicher ACME-Client

Server vorbereiten

Beginnen Sie mit einer unterstützten Linux-Version. Die folgenden Befehle gelten für Ubuntu oder Debian; passen Sie die Paketnamen für andere Distributionen an.

Terminal (auf dem VPS)
# Updates and a non-root user with sudo
apt update && apt upgrade -y
adduser deploy && usermod -aG sudo deploy

# Firewall: SSH, HTTP and HTTPS only
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

# Automatic security updates
apt install -y unattended-upgrades

Melden Sie sich mit einem SSH-Schlüssel an und deaktivieren Sie dann die Passwort-Anmeldung für SSH. Installieren Sie den Stack, den die Website braucht, etwa nginx oder Apache, PHP-FPM in derselben Version und mit denselben Erweiterungen wie beim alten Hoster sowie MySQL oder MariaDB. Dieselbe PHP-Version erspart Überraschungen; ein Upgrade erledigen Sie später als eigenen Schritt.

Die Website Schritt für Schritt umziehen

  1. Schritt 1: TTL senken

    Setzen Sie die A-Records einen Tag vor der Umstellung auf eine TTL von 300 Sekunden. Prüfen Sie den aktuellen Wert mit dem TTL-Checker.

  2. Schritt 2: VPS absichern und Stack installieren

    Spielen Sie Updates ein, legen Sie einen sudo-Benutzer an, aktivieren Sie SSH-Schlüssel und eine Firewall und installieren Sie dann die Versionen von Webserver, PHP und Datenbank, die die Website braucht.

  3. Schritt 3: Dateien kopieren

    Kopieren Sie die Website mit rsync -avz über SSH oder laden Sie ein Archiv vom alten Hoster herunter und auf den VPS hoch. Setzen Sie den Webserver-Benutzer als Eigentümer.

  4. Schritt 4: Datenbank importieren

    Exportieren Sie sie beim alten Hoster, legen Sie auf dem VPS eine Datenbank und einen Benutzer an, importieren Sie den Dump und aktualisieren Sie die Konfiguration der Anwendung mit den neuen Zugangsdaten.

  5. Schritt 5: Virtual Host einrichten

    Fügen Sie einen Server-Block für die Domain und www hinzu, übersetzen Sie eventuelle .htaccess-Regeln und laden Sie den Webserver neu.

  6. Schritt 6: Vor DNS auf der IP des VPS testen

    Erstellen Sie einen Vorschau-Link mit der Domain und der IP des VPS und nutzen Sie den Modus „Nur HTTP“ oder „Prüfung überspringen“, bis ein Zertifikat installiert ist. Klicken Sie sich durch, senden Sie Formulare ab, melden Sie sich an.

  7. Schritt 7: QA-Bericht ausführen

    Crawlen Sie die Vorschau mit einem QA-Bericht, um Standardseiten des Webservers, 502-Fehler von PHP-FPM, fehlende Rewrite-Regeln und PHP-Fehler zu finden.

  8. Schritt 8: DNS umstellen und Zertifikat ausstellen

    Synchronisieren Sie Dateien und Datenbank ein letztes Mal, lassen Sie die A-Records auf den VPS zeigen, stellen Sie dann das Zertifikat aus und verfolgen Sie die Propagation mit dem DNS-Propagation-Checker.

Virtual Host einrichten

Der Webserver wählt die Website anhand des Domainnamens in der Anfrage. Richten Sie einen Server-Block für example.com und www.example.com ein:

/etc/nginx/sites-available/example.com
server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com/public;
    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    }
}

Hat sich die Website beim alten Hoster auf .htaccess-Regeln verlassen, übersetzen Sie sie für nginx: Sprechende URLs, Weiterleitungen und Zugriffsbeschränkungen werden nicht von selbst übernommen. Passen Sie den Pfad zum PHP-FPM-Socket an die installierte Version an. Testen Sie die Konfiguration vor jedem Reload mit nginx -t und prüfen Sie die Einstellungen des PHP-FPM-Pools: Die Standardzahl an Worker-Prozessen ist klein, und eine stark besuchte Website, der die Worker ausgehen, antwortet mit 502- oder 504-Fehlern.

HTTPS vor der Umstellung

Die übliche HTTP-Challenge von Let’s Encrypt funktioniert erst, wenn die Domain auf den VPS zeigt. Sie haben drei Möglichkeiten: das Zertifikat direkt nach der Umstellung ausstellen (einige Minuten über reines HTTP oder mit selbstsigniertem Zertifikat), die DNS-Challenge nutzen, die schon vor der Umstellung funktioniert, wenn Ihr DNS-Anbieter eine API hat, oder das bestehende Zertifikat vom alten Hoster kopieren.

Zum Testen funktioniert ein frischer VPS ohne Zertifikat mit einer DNSPeek-Vorschau im Modus Nur HTTP: Besucher öffnen die Vorschau weiterhin über HTTPS, und DNSPeek spricht reines HTTP mit dem Server. Sorgen Sie zuerst dafür, dass die Anwendung dem HTTPS des Proxys vertraut, sonst erzeugt eine erzwungene HTTPS-Weiterleitung eine Schleife. Die Doku zeigt die Einstellungen für PHP und nginx: Origin ohne SSL.

E-Mail: nicht auf den VPS umziehen

Hat der alte Shared-Hoster auch Ihre E-Mail verwaltet, ist der Umzug ein guter Moment, beides zu trennen. Einen Mailserver gut zu betreiben (Spamfilter, Reputation, DKIM, Blocklisten) ist eine eigene Aufgabe, und viele Cloud-Anbieter sperren ausgehenden Port 25 standardmäßig. Ziehen Sie die Postfächer zu einem spezialisierten E-Mail-Anbieter um, aktualisieren Sie MX, SPF, DKIM und DMARC und lassen Sie die Website Transaktions-E-Mails über einen authentifizierten SMTP-Dienst versenden. Prüfen Sie die Einträge mit dem MX-Lookup, dem SPF-Checker und dem DMARC-Checker.

Nach der Umstellung

  • Stellen Sie das Zertifikat aus oder prüfen Sie es, und kontrollieren Sie es mit dem SSL-Checker.
  • Richten Sie Backups ein, die den Server verlassen: Datenbank-Dumps und Dateien in einen Objektspeicher oder auf einen anderen Rechner, und testen Sie eine Wiederherstellung.
  • Fügen Sie ein einfaches Monitoring hinzu: Verfügbarkeitsprüfungen, Speicherplatz und Ablauf des Zertifikats.
  • Legen Sie die Cronjobs vom alten Hoster neu an.
  • Folgen Sie der Checkliste nach dem Umzug.

Checkliste für den VPS-Umzug

VPS

  • Updates eingespielt, automatische Updates aktiv
  • sudo-Benutzer ohne Root-Rechte, SSH-Schlüssel, Passwort-Anmeldung aus
  • Firewall erlaubt nur SSH, HTTP und HTTPS
  • Gleiche PHP-Version und Erweiterungen wie beim alten Hoster
  • Dateien kopiert, Eigentümer und Berechtigungen gesetzt
  • Datenbank importiert, App-Konfiguration aktualisiert
  • Virtual Host für Domain und www; Rewrite-Regeln übersetzt
  • Website mit einem Vorschau-Link auf der IP des VPS getestet
  • QA-Bericht ohne Befunde
  • E-Mail zu einem spezialisierten Anbieter umgezogen; MX, SPF, DKIM, DMARC gesetzt
  • Letzte Synchronisierung, DNS umgestellt, Zertifikat ausgestellt
  • Backups außerhalb des Servers und eine getestete Wiederherstellung
  • Verfügbarkeits- und Speicherplatz-Monitoring eingerichtet

Häufig gestellte Fragen

Ist ein VPS schneller als Shared Hosting?

Oft, weil CPU und Arbeitsspeicher für Sie reserviert sind, statt mit vielen anderen Websites geteilt zu werden. Die Geschwindigkeit hängt aber weiter von der Konfiguration ab: PHP-FPM-Einstellungen, Caching und die Datenbank zählen ebenso viel wie die Hardware.

Kann ich vor der DNS-Änderung ein SSL-Zertifikat auf einem VPS bekommen?

Ja, mit einer DNS-Challenge, wenn Ihr DNS-Anbieter sie unterstützt, oder indem Sie das bestehende Zertifikat vom alten Hoster kopieren. Die übliche HTTP-Challenge funktioniert erst, wenn die Domain auf den VPS zeigt.

Wie teste ich meine Website auf einem VPS, bevor die Domain darauf zeigt?

Rufen Sie die Website von der IP des VPS unter ihrer echten Domain ab. Ein Vorschau-Link macht das in jedem Browser und lässt sich teilen; ein Eintrag in der hosts-Datei macht es auf Ihrem eigenen Computer. Die reine IP zeigt meist die Standardseite des Webservers.

Sollte ich E-Mail auf meinem VPS hosten?

Meist nicht. Mailserver brauchen laufende Pflege für Spamfilter, Reputation und Blocklisten, und viele Cloud-Anbieter sperren ausgehenden Port 25. Ein spezialisierter E-Mail-Anbieter plus ein SMTP-Dienst für die Website ist einfacher und zuverlässiger.

Was ist der häufigste Fehler beim Umzug auf einen VPS?

Die Arbeit zu vergessen, die der alte Hoster stillschweigend erledigt hat: Backups, Sicherheitsupdates, E-Mail und Cronjobs. Listen Sie vor dem Umzug alles auf, was der alte Hoster bereitgestellt hat, und legen Sie fest, wer sich auf dem VPS um jeden Teil kümmert.

Moving a site? Use the migration checklist

Every step from lowering the TTL to checking email after the switch, on one printable page. With a free account you keep your preview links in one place and run a QA report of the site on the new server.

Prüfen Sie den neuen Server vor der Umstellung

DNSPeek gibt Ihnen einen HTTPS-Link, der Ihre Website vom neuen Server zeigt, während DNS noch auf den alten verweist. Öffnen Sie ihn auf jedem Gerät, teilen Sie ihn mit Ihrem Team oder Kunden und starten Sie über denselben Link einen QA-Crawl.

Kostenlosen Vorschau-Link erstellen