Hallo,
if (isset($_SERVER['HTTPS']) and strtolower($_SERVER['HTTPS']) != 'off')
wäre das ok?
Nein. Bei manchen Webservern ist die HTTPS-Umgebungsvariable nämlich existent, aber leer, wenn HTTPS nicht an ist (Die Variable ist nicht offiziell standardisiert, aber alle Webserver, die ich bisher getestet habe, setzen sie auf "on", falls HTTPS aktiv ist und lassen sie entweder weg, setzen sie auf einen Leerstring oder setzen sie auf "off", wenn HTTPS nicht aktiv ist).
Die korrekte Abfrage ist also ganz einfach: Man prüfe die Variable auf "on":
if (isset ($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on')
Viele Grüße,
Christian