debugレベルに応じてエラー表示が変わってしまう

app/config/core.phpの
Configure::write(‘debug’, N);
のN=0とN>0では、コントローラーもしくはアクションなどが存在しない場合に表示されるエラーメッセージが変わってしまう。
具体的には、N>0ならば、app/views/missing_controller.ctp、app/views/missing_action.ctpが呼ばれるのに対して、N=0ならば、app/views/error404.ctpが呼ばれる仕組みだ。
これは、cake/libs/error.phpの110行目あたりにある
if ($method !== ‘error’) {
 if (Configure::read() == 0) {
  $method = ‘error404’;
  if (isset($code) && $code == 500) {
   $method = ‘error500’;
  }
 }
}
によるものである。
debugレベルを0にしてリリースする場合には、意図したエラーメッセージが出るか確認したほうがよさそうだ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です