Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour voila j'aimerais mettre en place zend pour la nouvelle version de mon site. Le soucis est que j'ai qu'un seul dossier unique sur lequel mon ndd pointe sans la possibilité de faire pointer sur le dossier public/html d'un projet zend.
Structure de mon site actuellement :
|-- sous domaine 1 // http://sous_domaine1.ndd.com
| |-- index.php
|
|-- sous domaine 2 // http://sous_domaine2.ndd.com
| |-- index.php
|
|-- index.php // http://www.ndd.com
|-- sous dossier 1 // http://www.ndd.com/sous_dossier1
|-- sous dossier 2
| |--sous sous dossier 1
Ce que j'aimerais c'est pouvoir externaliser le fichier index.php (dans lequel j'inclue le bootstrap) du dossier public où tous les dossier si y a pas le choix et obtenir une architecture comme ça :
|-- application
| |-- Bootstrap.php
| |-- controllers
| | |-- ErrorController.php
| | `-- IndexController.php
| |-- models
| `-- views
| |-- helpers
| `-- scripts
| |-- error
| | `-- error.phtml
| `-- index
| `-- index.phtml
|-- library
|-- public
| --css
| --js
|-- index.php
J'ai aussi envisager un changement d'hébergeur mais bon ça me tente pas des masses.
J'utilise zend 1.9.1 et si ca peut aider je développe en local sous mac OSX avec manp
Merci d'avance a ceux qui pourront m'aider.
Hors ligne
tu mets tout dans ton dossier de sorte que ton index.php soit à la racine de ton site.
tu ajoute des .htaccess dans chaque dossier autre que public pour en interdire la visite
et dans public tu interdit de lister
pourquoi css et js ne sont pas dans public ???
A+JYT
Hors ligne
Si si il sont dans public j'ai oublier le | pour l'arborescence.
Mais la ou je sais pas quoi mettre c'est dans Bootstrap.php
Dans index.php je fais un require_once './application/Bootstrap.php'
et dans mon bootstrap j'ai ça
// 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')); //Ensure library/ is on include_path set_include_path( get_include_path(). PATH_SEPARATOR . '.' . PATH_SEPARATOR . '../library' . PATH_SEPARATOR . '../application/models/' . PATH_SEPARATOR . '/' ); require_once 'Zend/Loader.php'; Zend_loader::registerAutoload(); $frontController = Zend_Controller_Front::getInstance(); $configArray = array( 'site_chemin' => dirname(dirname($_SERVER["SCRIPT_FILENAME"])), 'site_rep' => '', 'db' => array( 'adapter' => 'pdo_mysql', 'params' => array( 'host' => 'localhost', 'username' => 'root', 'password' => 'root', 'dbname' => 'bdd' ) ) ); $config = new Zend_Config($configArray); $registry = Zend_Registry::getInstance(); $registry->set('config', $config); // Configuration de la base donnÈes $db = Zend_Db::factory($config->db->adapter, $config->db->params->toArray()); Zend_Db_Table::setDefaultAdapter($db); $registry->set('db', $db); $frontController->setControllerDirectory(array( 'default' => '../application/controllers' )); // Dispatch the request using the front controller. $frontController->dispatch();
Dernière modification par n1k00 (29-08-2009 16:02:49)
Hors ligne
J'ai trouvé j'ai meme un peu honte d'avoir galerer ^^; vous pouvez fermer ou supprimer le sujet
Hors ligne
Pages: 1