Zend Framework - Hataİşleyici beklendiği gibi çalışıyor gibi görünmüyor

2 Cevap php

Bu Zend Framework kullanarak benim ilk deneyim. Ben Quick Start öğretici takip çalışılıyor. Her şey Error Controller and View bölümüne ulaşana kadar beklendiği gibi çalışıyordu. Ben var olmayan bir sayfaya gittiğinizde, bunun yerine hata sayfası alma I (onun'zafer tüm) Ölümcül Hata ekran dökümü olsun:

Ölümcül hata: mesajında ​​/ home 'belirtilen geçersiz denetleyici (hata)' ile yakalanmamış istisna 'Zend_Controller_Dispatcher_Exception' / .fantasia / bcnewman / foo.com / library / Zend / Controller / Dağıtıcı / Standard.php: 249 Yığın izleme: # 0 / ev / .fantasia / bcnewman / foo.com / library / Zend / Controller / Front.php (946): Zend_Controller_Dispatcher_Standard-> gönderme (Object (Zend_Controller_Request_Http), Object (Zend_Controller_Response_Http)) # 1 / home / .fantasia / bcnewman / foo .com / public / index.php (42): Zend_Controller_Front-> gönderme () # 2 {main} / home atılmış / on line .fantasia / bcnewman / foo.com / library / Zend / Controller / Dispatcher / Standard.php 249

Bu benim parçası üzerinde bir sözdizimi hatası (öğretici bir kopyalanıp yapıştırılan örnek dosyasının içeriği) neden olduğu inanmıyorum ve ben uygulama dizin yapısı doğru olduğuna inanıyorum:

./application
./application/controllers
./application/controllers/IndexController.php
./application/controllers/ErrorHandler.php
./application/views
./application/views/scripts
./application/views/scripts/index
./application/views/scripts/index/index.phtml
./application/views/scripts/error
./application/views/scripts/error/error.phtml
./application/bootstrap.php
./public
./public/index.php

Ve nihayet, IndexController ve index.phtml görünümü çalışır. Şimdiden çok teşekkürler. ~ B

2 Cevap

Sen ErrorHandler.php var. Bu ErrorController.php olmalıdır. Kontrolörleri NameController.php biçimini aşağıdaki adlandırılmış gerekir. Eğer düzgün adında var olmadığından memuru bulamıyorum.

Eğer ön denetleyicisi yüklü ErrorController eklenti, sizin bootstrap size aşağıdaki seti yok emin olduğunu varsayarak:

$frontController->throwExceptions(true);

Bu girilirse İstisnalar always olursa olsun bir hata denetleyici set var olsun veya olmasın, atılır.