2017-03-18 24 views
0

Slim PHPアプリケーションに1つのルートがあります。例えば、gallery.dev/roomPicture/RoomDetails/212のようになります。このリクエストをgallery.dev/loginの経路にリダイレクトしたいと思います。ここに私が試したものです: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'); 

これは、複数回gallery.dev/roomPicture/RoomDetails/loginために私をリダイレクトし、それがエラーをスローします。

どうすれば解決できますか?

ありがとうございます!

答えて

2

リダイレクトステータスコードは301です。また、URLを絶対/loginに変更します。これは現在のパスとの相対パスなので、loginが現在のパスディレクトリの先頭に追加されます。

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

またはそれwithRedirect($url, $status = null)

return $this->response->withRedirect('/login'); 
のための特別なメソッドを使用します
関連する問題