Ik heb een probleem met 404 statuscodes in Zend Framework 1. http://www.url.nl/path/wrong geeft een 404 error (omdat het "/path" gedeelte wel bestaat). Maar wanneer de root fout is (/path), geeft het een 500 error terug. Dus http://url.nl/wrong geeft dus een 500 statuscode. Iemand die dit probleem eerder heeft ervaren en/of een oplossing weet?
Dit is mijn error handler:
Dit is mijn error handler:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| switch ($errors->type) { case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE: case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER: case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION: // 404 error -- controller or action not found $this->getResponse()->setHttpResponseCode(404); $this->view->message = 'Page not found '.$role; if (!$role) $this->_helper->layout->setLayout ( 'pages/404' ); else $this->_helper->layout->setLayout ( '404' ); break; default: // application error $this->getResponse()->setHttpResponseCode(500); $this->view->message = 'Application error'; break; } if ($errors->exception instanceof Zend_Acl_Exception) { // send needed headers... // prepare log message... // render info: resource_not_found.phtml $this->_helper->viewRenderer('error-no-access'); $this->_helper->layout->setLayout ( '403' ); } |