Falls der Adminbereich über SSL läuft, ist dies eine zuverlässige Erkennung auf allen Servern? PHP: $protocol = stripos($_SERVER['SERVER_PROTOCOL'],'https') === true ? 'https://' : 'http://'; Nur "ENABLE_SSL_CATALOG" scheint mir a´bisserl riskant, da von User-Eingabe abhängig?
Nein, reicht nicht.... Im Frontend ("application_top") wird das wie folgt geprüft: PHP: $request_type = (getenv('HTTPS') == '1' || getenv('HTTPS') == 'on') ? 'SSL' : 'NONSSL';if($request_type == 'SSL' || !empty($_SERVER['HTTP_X_FORWARDED_HOST'])) { define('GM_HTTP_SERVER', HTTPS_SERVER);} else { define('GM_HTTP_SERVER', HTTP_SERVER);}
Hallo, wegen des von Avenger zitierten Teils kann man sich an $GLOBALS['request_type'] orientieren. Bezüglich $_SERVER['HTTP_X_FORWARDED_HOST'] möchte ich noch etwas anmerken: Das ist nichtleer, sobald der Webserver hinter einem Reverse Proxy steht. Das ist zwar in aller Regel ein SSL-Proxy, es gibt aber auch die (extrem seltene) Situation, dass alle Requests über einen Reverse Proxy laufen, und dann muss man auch diese Stelle in application_top.php anpassen.