A grosso modo, existem dois tipos de erros no CakePHP:
Erros de codificação e configuração:
Quando acessamos um endereço de nossa aplicação e está faltando alguma coisa, o CakePHP nos retorna uma mensagem avisando sobre o erro ocorrido e a causa dele (o que falta fazer).
Erros HTTP:
Quando tentamos acessar um endereço inexistente (erro 404) e quando há falha no servidor (erro 500).
O primeiro tipo deixa de ser exibido quando você configura o debug para o valor zero. A partir deste momento todos os erros relacionados ao primeiro tipo serão mostrados como um erro 404.
O segundo tipo é exibido não importando o valor do debug.
Como personalizar essas mensagens?
Caso queira usar o mesmo layou definido no arquivo app/views/layouts/default.ctp, você precisará apenas criar uma pasta chamada errors dentro da pasta views (caso ela não exista) e depois criar um arquivo para cada erro, ficando mais ou menos assim:
app/views/errors/error404.ctp app/views/errors/error500.ctp app/views/errors/missing_action.ctp
Veja a lista completa de arquivos acessando o diretório cake/libs/views/errors/
Caso queira ir um pouco além, personalizando também o layout da mensagem, adicione um arquivo com o layout definido em app/views/layouts/. Vamos chamar esse arquivo de errors.ctp;
Em seguida, vamos adicionar o seguinte código em nosso AppController:
/**
* Caso já esteja usando o beforeRender, apenas adicione a linha interna abaixo ao seu beforeRender
*/
function beforeRender () {
$this->_setErrorLayout();
}
function _setErrorLayout() {
if($this->name == 'CakeError') {
$this->layout = 'error';
}
}
Pronto, agora é só personalizar o arquivo errors.ctp da forma que achar melhor =]
Dica retirada do Teknoid