Website läuft nur über unverschlüsseltes HTTP

Worum es geht

Ihre Website antwortet auf http://, aber nicht mehr auf https://. Entweder ist Port 443 geschlossen oder es läuft dort kein Webserver. Besucher kommunizieren mit Ihrer Website im Klartext — ohne Verschlüsselung.

Warum das ein Problem ist

Ohne HTTPS läuft die gesamte Kommunikation offen über das Netz. Passwörter, Cookies, Formularinhalte, Kartennummern — jeder zwischen Ihnen und dem Besucher (WLAN-Betreiber, ISP, Hosting-Nachbar) kann das mitlesen und im Vorbeigehen verändern.

Das zweite Problem ist die Vertrauenswürdigkeit. Chrome und Firefox kennzeichnen Websites ohne HTTPS heute sichtbar als nicht sicher. Auch beim SEO zahlen Sie dafür — Google rankt HTTPS-Websites seit 2014 höher.

Wie Sie es beheben

Schritt 1 — Zertifikat besorgen

Für die meisten Websites genügt Let’s Encrypt. Es ist kostenlos, erneuert sich automatisch und wird von allen modernen Browsern unterstützt.

Schritt 2 — HTTP → HTTPS umleiten

Damit sich niemand die alten http://-URLs merkt, muss der Server jeden Besucher dauerhaft (HTTP 301) auf die HTTPS-Version umleiten.

# nginx
server {
    listen 80;
    server_name example.cz www.example.cz;
    return 301 https://$host$request_uri;
}

Schritt 3 — HSTS aktivieren

Der HSTS-Header sagt dem Browser „diese Website nie wieder über HTTP aufrufen“. Details siehe Strict-Transport-Security.

Referenzen