2017-03-18 6 views
0

Ich habe eine Route in meiner Slim PHP-Anwendung. Es geht so: gallery.dev/roomPicture/RoomDetails/212 zum Beispiel. Ich möchte all diese Anfragen an route gallery.dev/login weiterleiten. Hier ist, was ich versucht:Umleiten mit Slim PHP v 3.x

$app->get('/roomPicture/RoomDetails/{id}', function (Request $request, Response $response, $args){ 
//some code 
return $this->response->withStatus(200)->withHeader('Location', 'login'); 

Dieses leitet mich mehrmals gallery.dev/roomPicture/RoomDetails/login, und dann wirft sie einen Fehler.

Haben Sie eine Idee, wie kann ich es lösen?

Danke!

Antwort

2

Der Umleitungsstatuscode ist 301. Ändern Sie auch die URL auf absolut /login. Jetzt ist es relativ zum aktuellen Pfad, also wird login dem aktuellen Pfadverzeichnis vorangestellt.

return $this->response->withStatus(301)->withHeader('Location', '/login'); 

oder verwenden spezielle Verfahren zu dessen withRedirect($url, $status = null)

return $this->response->withRedirect('/login');