diff options
-rw-r--r-- | include/functions_url.inc.php | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/include/functions_url.inc.php b/include/functions_url.inc.php index 5a471bc10..138a895e1 100644 --- a/include/functions_url.inc.php +++ b/include/functions_url.inc.php @@ -62,14 +62,21 @@ function get_absolute_root_url($with_scheme=true) { $url .= 'http://'; } - $url .= $_SERVER['HTTP_HOST']; - if ( (!$is_https && $_SERVER['SERVER_PORT'] != 80) - ||($is_https && $_SERVER['SERVER_PORT'] != 443)) + if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) { - $url_port = ':'.$_SERVER['SERVER_PORT']; - if (strrchr($url, ':') != $url_port) + $url .= $_SERVER['HTTP_X_FORWARDED_HOST']; + } + else + { + $url .= $_SERVER['HTTP_HOST']; + if ( (!$is_https && $_SERVER['SERVER_PORT'] != 80) + ||($is_https && $_SERVER['SERVER_PORT'] != 443)) { - $url .= $url_port; + $url_port = ':'.$_SERVER['SERVER_PORT']; + if (strrchr($url, ':') != $url_port) + { + $url .= $url_port; + } } } } |