foldrr's weblog

旧ブログ http://d.hatena.ne.jp/foldrr/

CakePHP Ktai Library を使うと docomo でリダイレクトできない

原因

  • docomo の一部機種は相対パスを受け付けてくれない。
  • Ktai Library の AppController::redirect() では Router::url(, true) していない。
  • 上記により docomo では Missing Controller が起きる。

対処

<?php
class AppController extends Controller {
    function redirect($url, $status = null, $exit = true){
	if(isset($this->Ktai)){
		if($this->Ktai->_options['enable_ktai_session'] && 
			($this->Ktai->_options['use_redirect_session_id'] || $this->Ktai->is_imode())){
                        :
                        :
			//$url = Router::url($url);
			$url = Router::url($url, true);
		}
	}
	return parent::redirect($url, $status, $exit);
    }
}
?>