Marian Steinbach: Blog

HTTPS erzwingen mit Apache und mod_rewrite

2008/08/17

Keine Ahnung, wie oft ich das jetzt schon in PHP gelöst habe… hier ist die Variante, die bisher am einfachsten und wartungsfreundlichsten erscheint und daher irgendwo abgelegt gehört.

Voraussetzung sind zwei (virtuelle) Server mit dem selben Hostnamen, einer auf Port 80 und einer mit SSL auf Port 443. Will man ermöglichen, dass Nutzer z.B. durch manuelle Eingabe die Adresse http://… aufrufen und dann auf dem SSL-verschlüsselten Server landen, bietet sich ein Redirect von dem unverschlüsselten auf den verschlüsselten Server an.

Hier sind die zwei Zeilen für die Apache-Konfiguration, die z.B. in die .htaccess-Datei geschrieben werden können.

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://mein.server.de/$1 [R=301,L]

Möchte man nicht mit .htaccess arbeiten, kann man natürlich den Redirect auch ohne RewriteCond (und ohne mod_rewrite, dafür mit mod_alias und der Redirect-Direktive) direkt in die jeweilige Server-Konfiguration eintragen.

Your comment

Note: Due to issues with comment spam, your comment might not be published immediately.

Subscribe to new comments via email