Die Umstellung Ihrer Website auf HTTPS ist ein wichtiger Schritt für die Sicherheit und das Vertrauen der Benutzer. Wenn Ihr Linux-basierter Webserver immer noch den Zugriff über einfaches HTTP erlaubt, setzen Sie Ihre Besucher und Daten einem Risiko aus. In diesem Leitfaden erklären wir Ihnen, wie Sie den gesamten Datenverkehr von HTTP auf HTTPS umleiten und dabei gängige Linux-Server-Konfigurationen verwenden.

Warum zu HTTPS umleiten?

Die Umstellung auf HTTPS (SSL/TLS) gewährleistet:

  • Verschlüsselte Kommunikation zwischen Benutzern und Ihrem Server
  • Verbessertes SEO-Ranking (Google bevorzugt HTTPS)
  • Vertrauensindikatoren wie das Vorhängeschloss-Symbol im Browser
  • Übereinstimmung mit modernen Webstandards

Sobald Sie ein SSL-Zertifikat installiert haben, besteht der nächste Schritt darin, den gesamten Datenverkehr über das sichere HTTPS-Protokoll zu leiten.

Apache: HTTP auf HTTPS umleiten

Wenn Ihr Server Apache verwendet, können Sie die Umleitung folgendermaßen konfigurieren.

Schritt 1: Aktivieren Sie das Rewrite-Modul

Stellen Sie sicher, dass mod_rewrite aktiviert ist:

sudo a2enmod rewrite
sudo systemctl neustart apache2

Schritt 2: Aktualisieren Sie die Konfiguration Ihres virtuellen Hosts

Öffnen Sie Ihre HTTP(port 80) Konfigurationsdatei für den virtuellen Host:

sudo nano /etc/apache2/sites-available/000-default.conf

Dann fügen Sie dies innerhalb des -Blocks ein:

RewriteEngine Ein
RewriteCond %{HTTPS} aus
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Speichern und beenden Sie die Datei und starten Sie dann den Apache neu:

sudo systemctl restart apache2

Nginx: HTTP auf HTTPS umleiten

Wenn Ihr Server Nginx verwendet, wird die Umleitung im Serverblock der Website durchgeführt.

Schritt 1: Bearbeiten Sie die Nginx-Konfigurationsdatei

sudo nano /etc/nginx/sites-available/default

Schritt 2: Einen Redirect-Block hinzufügen

Fügen Sie oberhalb Ihres bestehenden server-Blocks für HTTPS diesen hinzu:

server {
    listen 80;
    server_name ihredomain.de www.yourdomain.com;

    return 301 https://$host$request_uri;
}

Ersetzen Sie yourdomain.com mit Ihrem tatsächlichen Domainnamen. Dann testen und neu laden:

sudo nginx -t
sudo systemctl reload nginx

Optional: Umleitung von www auf nicht-wwww (oder umgekehrt)

Sie können die HTTPS-Erzwingung auch mit der Kanonisierung von Domänen kombinieren.

Beispiel: Umleitung von www auf nichtwww (mit HTTPS) in Nginx:

server {
    listen 80;
    server_name www.yourdomain.com;

    return 301 https://yourdomain.com$request_uri;
}

Testen der Umleitung

Sobald Sie die Änderungen vorgenommen haben, testen Sie sie:

Abschließende Anmerkungen

  • Stellen Sie sicher, dass Ihr SSL-Zertifikat gültig und installiert ist, bevor Sie HTTPS erzwingen.
  • Verwenden Sie immer 301 (permanente) Weiterleitungen, um SEO-Probleme zu vermeiden.
  • Verwenden Sie die Weiterleitungslogik auf Webserverebene, nicht über PHP oder JavaScript.