これは既に回答がある質問ですが、どれも私のために働いていません。私が使用することはできませんいくつかの理由について:PHP Slim - リダイレクトが機能しない
$app->redirect($app->urlFor('home'));
OR
$app->response->redirect($app->urlFor('home'));
ルート「ホーム」に定義されていますが、何らかの理由でスリムはちょうど空の200応答を返しています。私が間違っていることはありますか?
EDIT: 全コード:
$app->get('/gensession', function() use ($app){
// set up session; this works
// if I echo anything here, it'll output on the page
$app->redirect('/'); // This doesn't work, neither does urlFor(<name>)
return;
});
これはただで/ gensession空白のページに私を残します。スリムは200(OK)を返します。エラーはありません。出力はありません。
の.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
EDIT 2: $ APP-の出力>応答は次のとおりです。
object(Slim\Http\Response)#113 (5) { ["status":protected]=> int(302) ["headers"]=> object(Slim\Http\Headers)#115 (1) { ["data":protected]=> array(2) { ["Content-Type"]=> string(9) "text/html" ["Location"]=> string(1) "/" } } ["cookies"]=> object(Slim\Http\Cookies)#116 (2) { ["defaults":protected]=> array(6) { ["value"]=> string(0) "" ["domain"]=> NULL ["path"]=> NULL ["expires"]=> NULL ["secure"]=> bool(false) ["httponly"]=> bool(false) } ["data":protected]=> array(0) { } } ["body":protected]=> string(0) "" ["length":protected]=> int(0) }
注:["status":protected]=> int(302)
と["Location"]=> string(1) "/"
ので、レスポンスオブジェクトが明確に含まれている場合これらのプロパティは、なぜクライアントに返されませんか?
は、それはあなたがしなければ$ APP->( '/ホーム')をリダイレクト動作していません。または$ app-> response-> redirect( '/ home'); ? –
いいえ、動作していません。しかし、私が質問で言及しなかった何かは私が前にリダイレクトすることができたということです。スリムリダイレクトを止めるには何かをしたに違いない。それは何でしょうか? –
エラーがありますか? use($ app)を使いますか? –