diff options
Diffstat (limited to 'phpBB/includes')
-rw-r--r-- | phpBB/includes/functions.php | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index 0a10a9604c..c937b8f562 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -2662,6 +2662,16 @@ function redirect($url, $return = false, $disable_cd_check = false) // Make sure no &'s are in, this will break the redirect $url = str_replace('&', '&', $url); + // The url currently uses the web root path. + // However as we prepend the full board url later, + // we need to remove the relative web root path and + // prepend the normal root path again. Otherwise redirects + // from inside routes will not work as intended. + if ($phpbb_path_helper instanceof \phpbb\path_helper) + { + $url = $phpbb_path_helper->remove_web_root_path($url); + } + // Determine which type of redirect we need to handle... $url_parts = @parse_url($url); |