Improved http vs https detection

To fix issues with cloudflare dns routing.
This commit is contained in:
Joey Kimsey
2025-01-21 20:43:15 -05:00
parent 31c51c1a5b
commit 4b4e06a98f

View File

@ -43,10 +43,16 @@ class Route {
* @return string - The string representation of the server's transfer protocol
*/
public static function getProtocol() {
if ( !empty( $_SERVER['HTTPS'] ) && $_SERVER['HTTPS'] !== 'off' ) {
if (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') {
return 'https';
}
if ( $_SERVER['SERVER_PORT'] == 443 ) {
if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
return 'https';
}
if (!empty($_SERVER['HTTP_X_FORWARDED_PORT']) && $_SERVER['HTTP_X_FORWARDED_PORT'] == 443) {
return 'https';
}
if (!empty($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) {
return 'https';
}
return 'http';