Salut.
Je recherche désespérément comment personnaliser les pages d'erreurs en production avec CakePHP2.0.
Depuis la release 2.0 on n'utilise plus le composant des erreurs mais des exceptions php. On lève ainsi des exceptions et on peut même préciser un code d'erreur http. Plutôt génial!
En mode dév, on a 'debug' à 1 ou 2, on utilise alors les vues de /view/Errors pour personnaliser les pages. Ex : si on lève ErreurPersoException('message', 404) on crée /View/Errors/erreur_perso.ctp. On affiche ce que l'on veux... C'est cool.
Problème : en prod, avec 'debug' à 0, tous ces messages custom sont enregistrés dans /tmp/logs/error.log et une page 'Not Found' s'affiche. Je ne comprend pas comment modifier cette xxxx de page!
Des retours d'expérience svp? Merci d'avance.
C'est pas le code qui pose problème mais plutôt le message :
Not Found
Error: The requested address '/cakephp-2.0.3/fr/blog' was not found on this server.
que je n'arrive pas à personnaliser quand debug est à 0.
En prod, mes vues View/Errors servent à enregistrer des messages customs dans les logs.
Mon problème est tout simple, comment personnaliser le message qui s'affiche sur ce lien erroné par exemple : http://www.grafikart.fr/blog/mail-local-wam-111xxxx9
J'ai crée des vues dédiées dans View/Errors. En mode 'debug' à 1 et 2, ces vues s'affichent et me permettent d'indiquer : "page introuvable", "mode maintenance", etc.
Quand 'debug' est à 0 (ce qui est requis en production), mes messages explicités ci-dessus s'affichent uniquement dans les logs. L'affichage est une page qui n'a rien à voir avec mes vues custom : Not Found Error: The requested address '/cakephp-2.0.3/fr/blog' was not found on this server.
Je sais pas si c'est plus clair...
Oui je comprend ton problème, mais c'est spécifié dans le fichier core.php quand on met 0, il n'y a rien qui s'affiche
Oui je trouve cette logique bizarre. Ça aurait pu être bien d'avoir 2 niveaux de messages (pour debug à 0 ou debug > 0).