LoginSignup
4
4

More than 5 years have passed since last update.

IE10以降でfuelphpのResponse::redirect()を使うときに気をつけること

Posted at

IE10以降では、Locationヘッダーを受け取った場合にも、Expireヘッダーなどを元にブラウザがページをキャッシュするようです。(バグorRFCの仕様どおり?)

ApacheなどのWebサーバ側で長めのExpire値を設定しているなど特殊な環境ではHTTPヘッダー を上書きする必要があります。

ただし、fuelphpのResponse::redirect()は、headerの上書きはできないので、\Fuel\Responseクラスのサブクラスをクラス作ってheaderを上書きします。
bootstrapのautoloadでクラスを読み込むようにする事もできます。

また、スタティックメソッドなので、new Response()やController_Application()のbefore()で設定しているheaderとは関係ない点も注意しましょう。

参考文献

Response - クラス - FuelPHP ドキュメント
http://fuelphp.jp/docs/1.7/classes/response.html#/method_redirect

FuelPHPでResponse::redirectをする時にハマった’refresh’の挙動(IEのみ)
http://blog.godvalley.me/archives/975

リダイレクト時のステータスコードには何を使えばいいか?
http://www.symmetric.co.jp/blog/archives/123

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4