Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Salut à tous !
Je viens de finir mon Intranet pour mon entreprise sous Zend Framework. Tout fonctionne très bien en local, mais lorsque je déploie sur le serveur de l'entreprise j'ai une magnifique erreur :
Fatal error: Uncaught exception 'Zend_Config_Exception' with message 'parse_ini_file(./application/config.ini) [<a href='function.parse-ini-file'>function.parse-ini-file</a>]: failed to open stream: No such file or directory' in C:\Program Files\exportged\library\Zend\Config\Ini.php:181 Stack trace: #0 C:\Program Files\exportged\library\Zend\Config\Ini.php(201): Zend_Config_Ini->_parseIniFile('./application/c...') #1 C:\Program Files\exportged\library\Zend\Config\Ini.php(125): Zend_Config_Ini->_loadIniFile('./application/c...') #2 C:\Program Files\exportged\index.php(30): Zend_Config_Ini->__construct('./application/c...', 'general') #3 C:\Program Files\multigest\webserveur\index.php(3): include('C:\Program File...') #4 {main} thrown in C:\Program Files\exportged\library\Zend\Config\Ini.php on line 181
Voici mon bootstrap qui s'appele "index.php" pour être lancé en premier :
<?php //Affichage des erreurs (a desactiver en environnement de prod) error_reporting(E_ALL|E_STRICT); ini_set('display_errors', 1); // Zone temporelle date_default_timezone_set('Europe/Paris'); // Mise en place des repertoires et chargement des classes defined('APPLICATION_PATH') || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); set_include_path('.' . PATH_SEPARATOR . 'C:/Program Files/monprojet/library' . PATH_SEPARATOR . './library' . PATH_SEPARATOR . './application/models' . PATH_SEPARATOR . './application' . PATH_SEPARATOR . get_include_path()); //inclusion et instanciation de la class Zend_Loader_Autoloader qui est un singleton (car l'autoloader de la SPL est unique) require_once 'Zend/Loader/Autoloader.php'; // puis on recupere l'instance de cette class Zend_Loader_Autoloader::getInstance(); // Chargement de classes specifiques Zend_Loader::loadClass('Zend_Db_Table'); Zend_Loader::loadClass('Zend_Debug'); Zend_Loader::loadClass('Zend_Auth'); // Chargement de la configuration de la base de donnees $config = new Zend_Config_Ini('./application/config.ini', 'general'); $dbAdapter = Zend_Db::factory($config->db->adapter, $config->db->params); Zend_Db_Table::setDefaultAdapter($dbAdapter); Zend_Registry::set('dbAdapter', $dbAdapter); Zend_Db_Table_Abstract::setDefaultAdapter($dbAdapter); // Configuration - Mise en place du controller primaire $frontController = Zend_Controller_Front::getInstance(); $frontController->throwExceptions(true); $frontController->setControllerDirectory('./application/controllers'); Zend_Layout::startMvc(array('layoutPath'=>'./application/layouts')); // run! $frontController->dispatch();
Apparement il ne trouve pas mon fichier de configuration "config.ini" mais je ne vois pas pourquoi.
Quelqu'un a-t-il déjà eut un problème similaire ? Je suis perdu
ps : Voici mon architecture MCV :
MonProjet \__application \__controllers \__layouts \__models \__views \__config.ini \__library \__Zend \__public \__css \__images \__js \__index.php
Dernière modification par php4zewin (02-03-2011 15:20:25)
Hors ligne
Si tu déploies sous linux, surveille bien les majuscules et le minuscules.
Windows s'en fout, mais sous Linux on doit les respecter.
A+, Philippe
Hors ligne
comme tu peux le voir dans mon boostrap :
PATH_SEPARATOR . 'C:/Program Files/monprojet/library'
Il s'agit donc d'un déploiement sous windows ^^
Hors ligne
Est-ce que sur ta plateforme de dev tu as aussi un espace dans ton répertoire (le Programme Files).
Ca ne m'étonnerait pas plus que ça que les espaces soient mal gérés par le ZF à certains endroits.
A+, Philippe
Hors ligne
Pages: 1