d1m
Новичок
Zend Framework 0.6.0 page 404
Приветствую всех!
В ZF версии 0.2 если контроллер не находился вызывалось действие noRoute контроллера IndexController. В версии 0.6 такое действие исключили и предложили заменить его более понятным - __call(). В общем-то все бы и ничего, если бы не одно "но".
Вот есть урл www.example.com/test/test1 . Вот пользователь заходит, если он наберет не test1 а test2 то именно этот метод и отработает. Но если он наберет www.example.com/tets/test1 ? То тогда фреймворк выматюгается, что нет такого контроллера. Это в лучшем случае, потому как по умолчанию он вообще отобразит пустую страницу.
Можно в своем index.php ставить костыль:
но мне кажется, что должен быть вариант это красиво и без такого горбыля завернуть. Кто чего скажет?
Приветствую всех!
В ZF версии 0.2 если контроллер не находился вызывалось действие noRoute контроллера IndexController. В версии 0.6 такое действие исключили и предложили заменить его более понятным - __call(). В общем-то все бы и ничего, если бы не одно "но".
Вот есть урл www.example.com/test/test1 . Вот пользователь заходит, если он наберет не test1 а test2 то именно этот метод и отработает. Но если он наберет www.example.com/tets/test1 ? То тогда фреймворк выматюгается, что нет такого контроллера. Это в лучшем случае, потому как по умолчанию он вообще отобразит пустую страницу.
Можно в своем index.php ставить костыль:
PHP:
try{
$controller = Zend_Controller_Front::getInstance();
$controller->throwExceptions(true);
Zend_Controller_Front::run("$path/controllers");
}
catch (Zend_Controller_Exception $e)
{
$smarty = Zend::registry('smarty');
$smarty->display('error404.tpl');
}
