Как ошибка 500 с PhalconPHP пользователям?
Я использую этот код для отображения ошибки 404 (дисплей error404.volt вид) и ошибка 500 (отображение error500.volt Посмотреть).
Страница ошибки 404 отображается должным образом, но не страница ошибки 500.
$di->set('dispatcher', function() {
//Create/Get an EventManager
$eventsManager = new \Phalcon\Events\Manager();
//Attach a listener
$eventsManager->attach("dispatch:beforeException", function($event, $dispatcher, $exception) {
//Handle 404 exceptions
if ($exception instanceof \Phalcon\Mvc\Dispatcher\Exception) {
$dispatcher->forward(array(
'controller' => 'index',
'action' => 'error404'
));
return false;
}
//Handle other exceptions
$dispatcher->forward(array(
'controller' => 'index',
'action' => 'error500'
));
return false;
});
$dispatcher = new \Phalcon\Mvc\Dispatcher();
//Bind the EventsManager to the dispatcher
$dispatcher->setEventsManager($eventsManager);
return $dispatcher;
}, true);
Вы можете сделать это, установив статус запроса в действии перенаправленного контроллера. В вашем случае indexController :: error500Action ()
$this->response->setStatusCode(500, "Internal Server Error");
Других решений пока нет …