Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Salut,
J'ai un petit souci, lorsque j'appel mon bootstrap index.php j'obtiens l'erreur suivante :
Fatal error: Uncaught exception 'Zend_Application_Bootstrap_Exception' with message 'No default controller directory registered with front controller' in /www/library/Zend/Application/Bootstrap/Bootstrap.php:91 Stack trace: #0 /www/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #1 /www/htdocs/sitezend_avance/html/index.php(17): Zend_Application->run() #2 {main} thrown in /www/library/Zend/Application/Bootstrap/Bootstrap.php on line 91
mon fichier /www/htdocs/sitezend_avance/html/index.php :
<?php require_once 'Zend/Application.php'; // Create application, bootstrap, and run $app = new Zend_Application('/www/htdocs/sitezend_avance/application/config/application.ini'); $app->bootstrap()->run();
mon fichier /www/htdocs/sitezend_avance/application/config/application.ini :
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = "/www/library/"
bootstrap.path = "/www/htdocs/sitezend_avance/application/Bootstrap.php"
bootstrap.class = "Bootstrap"
resources.frontController.controllerDirectory = "/www/htdocs/sitezend_avance/application/controllers"
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
mon fichier /www/htdocs/sitezend_avance/application/Bootstrap.php :
<?php class Bootstrap extends Zend_Application_Bootstrap_Bootstrap { public function run() { Zend_Registry::set('config', new Zend_Config_Ini($this->getOptions())); parent::run(); } }
Merci
Hors ligne
Le premier paramètre du constructeur de Zend_Application c'est l'environnement pas le fichier de config
C'est ça ton problème.
Quoiqu'il en soit déjà je te conseille ceci :
Créer ton APPLICATION_PATH que tu utiliseras dans ton fichier de config.ini et dans toute ton application.
Voici ton code modifié :
ton fichier index.php
[lang=php] <?php // Define path to application directory defined('APPLICATION_PATH') || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); // Define application environment defined('APPLICATION_ENV') || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production')); require_once 'Zend/Application.php'; // Create application, bootstrap, and run $app = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini'); $app->bootstrap()->run();
Sache de plus qu'on peut utiliser les constantes PHP dans l'application.ini
Ton fichier application.ini :
[production] phpSettings.display_startup_errors = 0 phpSettings.display_errors = 0 includePaths.library = "/www/library/" bootstrap.path = APPLICATION_PATH "/Bootstrap.php" bootstrap.class = "Bootstrap" resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" [staging : production] [testing : production] phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1 [development : production] phpSettings.display_startup_errors = 1 phpSettings.display_errors = 1
Et pouf ça devrait marcher !
Hors ligne
Pages: 1