public function redirectToUri($relativeUri) { $request = DC::getRouter()->getCurrentRequest(); if ($relativeUri == '/') { $relativeUri = ''; } $webRoot = DC::getRouter()->getWebRoot(); $applicationUrlPart = ($webRoot !== "/" ? $webRoot . '/' : '') . (DC::getApplication()->getName() == 'frontend' ? '' : DC::getApplication()->getName() . '/'); $fullUrl = $request->getHost() . '/' . $applicationUrlPart . $relativeUri; $fullUrl = str_replace('//', '/', $fullUrl); $response = new Response(); $response->setStatusCode(HttpStatus::HTTP_FOUND); $response->setHeader('Location', $request->getProtocol() . '://' . $fullUrl); if (headers_sent()) { DC::getLogger()->add('Cannot redirect to ' . $relativeUri); } $response->send(); die; }
public function redirectToRelativeUri($relativeUri) { if ($relativeUri == '/') { $relativeUri = ''; } $fullUrl = $this->getBaseUri() . $relativeUri; $response = new Response(); $response->setStatusCode(HttpStatus::HTTP_FOUND); $response->setHeader('Location', $fullUrl); $response->send(); die; }