Weiterleitung auf SSL

Nexlamar

Erfahrenes Mitglied
Hallo!

Ich möchte bei Aufruf einer bestimmten Seite auf SSL umleiten. Dazu prüfe ich zu Beginn der aufzurufenden Datei:

PHP:
if(!isset($_SERVER['HTTPS']) || strtolower($_SERVER['HTTPS']) != "on")  {
  header("Location: https://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  exit();
}

Dann bekomme ich folgende Fehlermeldung im FF:

Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.

Wo könnte der Fehler liegen?

Danke!!
 
Prüfe mal den Port, über den die Anfrage läuft. Denn eine HTTPS-Verbindung wird über den Port 443 abgewickelt.
PHP:
if( $_SERVER['SERVER_PORT'] != 443 ) { 
	header('Location: https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
	exit();
}
Den Query String solltest du übrigens auch noch mitschicken.
 
Hm - hat leider nicht funktioniert - es kommt die gleiche Fehlermeldung. Komischerweise funktioniert der Switch auf SSL auf meinem "Offline-Server" problemlos ...

Nochwas: Die Umleitung steht ganz zu Beginn der PHP-Datei - nur falls das von Bedeutung sein sollte ...
 
Hi!

Perfekt, danke - hat genauso funktioniert. Nur eine Frage noch: Wenn der User das Bestellformular verlässt, soll auch wieder auf http umgeleitet werden. Eine htaccess-Datei im root-Verzeichnis mit http-Umleitung produzierte aber wieder besagte Fehlermeldung - Wie mache ich die Umleitung denn am Besten wieder rückgängig?
 
Da sollte eine einfache PHP-Umleitung mittels header()-Funktion reichen. Oder leitest du auf dasselbe Skript um, sodass wieder die „mod_rewrite“-Regel greift?
 
Nein, ich habe jetzt mit htaccess das Unterverzeichnis /order auf ssl gesetzt. Alles was darunter ist (root) außer eben /order soll http bleiben.
 
Zurück