Erzwingen einer SSL-Verbindung mit .htaccess

 
Sie können die Webbrowser Ihrer Besucher mitteilen SSL zu verwenden https:// (erzwingen einer SSL Verbindung).
Das zu erreichen sollten Sie:
  • Sie brauchen ein signiertes SSL-Zertifikat wie z.B. Let's Encrypt.
  • Eine der beiden rewrite-rules, welche Sie in eine .htaccess Datei in der document-root (Ordner www/home) der jeweiligen aufzurufenden Webseite platzieren.
Variante 1:
RewriteEngine on
RewriteCond %{ENV:HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Variante 2:
RewriteEngine on
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
 

Feedback

Add Feedback
Könnten Sie bitte eine kurze Beschreibung hinterlegen, was die eine von der anderen Variante punkto Aktivitäten unterscheidet?

In einer ähnlich gelagerten Situation haben mir die beiden obigen nicht geholfen, hingegen mit

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

gelangs.

Tom Reischl (October 4, 2016 at 1:04 PM)
Jede der Varianten (incl. Ihrer) prüft in Zeile 2 ob HTTPS inaktiv ist
und schreibt die URL in Zeile 3 auf HTTPS:// um.

Variante 1 prüft eine Umgebungsvariable auf "HTTPS ungleich on"
Variante 2 prüft ob HTTPS Transport-Protokoll inaktiv ist

Gerhard Kleewein (October 13, 2016 at 5:46 PM)

Add Feedback