質問: 表題の件ですが、FuelPHP1.8でリダイレクトメソッドが全く効きません。 Response::redirect('http://google.com'); 上記メソッドを実行すると、タイトルがもともと遷移する予定だったページのタイトルのまま、ページ内が真っ白になっていて、リダイレクトしてくれません。 ブラウザはsafari、chromeどちらも試しました。 追記: ログを確認したところ、 shutdown - Cannot modify header information - headers already sent by と表示されておりました。 しかし、ネットで調べて出てくるようなHeaderの前に何か出力しているということはありません。 下記のようにコントローラー内で飛ばそうとしているだけですが、上記エラーが起こってしまいます。 public function action_index() { Response::redirect('article/login'); }
回答: まずphp.iniの ``` output_buffering = Off ``` を ``` output_buffering = On ``` に変更することで期待通りに動作しますでしょうか? また > > ネットで調べて出てくるようなHeaderの前に何か出力しているということはありません。 > > > とのことなので、関連ファイルがエンコーディング(=UTF-8 BOMなし)および改行コード(=LF)になっているか確認してみてください。Windows環境で開発している場合は要注意です。