From 18a0fd7fdc2977069962e82030b5f78a401974cc Mon Sep 17 00:00:00 2001 From: Ubuntu Date: Wed, 11 May 2022 15:20:04 +0000 Subject: [PATCH] - Adjusted some protocol recognition into var to match proxy's one --- src/Extension/UrlExtension.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Extension/UrlExtension.php b/src/Extension/UrlExtension.php index 08a3c6a..ce2ca0b 100644 --- a/src/Extension/UrlExtension.php +++ b/src/Extension/UrlExtension.php @@ -168,18 +168,19 @@ class UrlExtension implements Extension { protected function isHttps() : bool { - $header = in_array('https', array_map("strtolower", [ + $https = in_array('https', array_map("strtolower", [ + $_SERVER['REQUEST_SCHEME'] ?? "", $_SERVER['X-Url-Scheme'] ?? "", $_SERVER['Front-End-Https'] ?? "", - $_SERVER['X-Forwarded-Ssl'] ?? "", $_SERVER['X-Forwarded-Proto'] ?? "", $_SERVER['X-Forwarded-Protocol'] ?? "", + $_SERVER['HTTP_X_FORWARDED_PROTO'] ?? "", + $_SERVER['HTTP_X_FORWARDED_PROTOCOL'] ?? "", ])) || isset($_SERVER['HTTP_X_ARR_SSL']); - return $header + return $https || ( "443" === ( $_SERVER['SERVER_PORT'] ?? "" ) ) - || ( "https" === ( $_SERVER['REQUEST_SCHEME'] ?? "http") ) - || ( "off" !== ( strtolower($_SERVER['HTTPS'] ?? "off")) ); + || ( "off" !== ( strtolower($_SERVER['HTTPS'] ?? $_SERVER['HTTP_X_FORWARDED_SSL'] ?? $_SERVER['X-Forwarded-Ssl'] ?? "off")) ); } protected function prepareRoute(string $route, array &$arguments)