diff options
| author | 2022-02-04 15:41:20 +0100 | |
|---|---|---|
| committer | 2022-02-04 15:41:20 +0100 | |
| commit | 88b934da8bec70da1400525748336c0b71864b1a (patch) | |
| tree | f5396060578dc05f6f0aee206387b479db2dccb7 /lib/Minz/Request.php | |
| parent | 60d96652dda458aeae78fd25f7c5f6818d518ef1 (diff) | |
Fix root redirection (#4167)
* Fix root redirection
#fix https://github.com/FreshRSS/FreshRSS/issues/4126
* Smarter
Diffstat (limited to 'lib/Minz/Request.php')
| -rw-r--r-- | lib/Minz/Request.php | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/Minz/Request.php b/lib/Minz/Request.php index ee3962615..d67e23fdf 100644 --- a/lib/Minz/Request.php +++ b/lib/Minz/Request.php @@ -147,9 +147,9 @@ class Minz_Request { /** * Try to guess the base URL from $_SERVER information * - * @return string base url (e.g. http://example.com/) + * @return string base url (e.g. http://example.com) */ - public static function guessBaseUrl() { + public static function guessBaseUrl(): string { $protocol = self::extractProtocol(); $host = self::extractHost(); $port = self::extractPortForUrl(); @@ -225,12 +225,11 @@ class Minz_Request { return ''; } - /** - * @return string - */ - private static function extractPath() { - if ('' != $path = ($_SERVER['REQUEST_URI'] ?? '')) { - return '/' === substr($path, -1) ? substr($path, 0, -1) : dirname($path); + private static function extractPath(): string { + $path = $_SERVER['REQUEST_URI'] ?? ''; + if ($path != '') { + $path = parse_url($path, PHP_URL_PATH); + return substr($path, -1) === '/' ? rtrim($path, '/') : dirname($path); } return ''; } @@ -343,7 +342,7 @@ class Minz_Request { $url['params']['rid'] = self::requestId(); if ($redirect) { - header('Location: ' . Minz_Url::display($url, 'php')); + header('Location: ' . Minz_Url::display($url, 'php', 'root')); exit(); } else { self::_controllerName($url['c']); |
