diff --git a/src/service/RouteService.php b/src/service/RouteService.php index 9b69686..dd38da8 100644 --- a/src/service/RouteService.php +++ b/src/service/RouteService.php @@ -34,10 +34,11 @@ class RouteService extends Service public function redirect(string $url = '', int $status = 302, bool $parameter = false) { if (empty($url)) $url = request()->scheme() . "://" . request()->host(); - if ($status === 302) header("Location: {$url}" . $parameter === true ? request()->query() : ''); - elseif ($status === 301) { - header('HTTP/1.1 301 Moved Permanently'); - header("Location: {$url}" . $parameter === true ? request()->query() : ''); - } + $param = http_build_query(request()->param()); + if ($status == 301) header('HTTP/1.1 301 Moved Permanently'); + if (empty($parameter)) header("Location: {$url}"); + elseif (empty($parameter) == false && empty($param) == true) header("Location: {$url}"); + else header("Location: {$url}?{$param}"); + exit; } }