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にしてリリースする場合には、意図したエラーメッセージが出るか確認したほうがよさそうだ。