Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
j'espère trouver des réponses ici, si je me trompe de section désolé.
je suis en train de migrer la totalité de mes applications de mon ancien serveur qui utilise ZendServer CE 5.0.4, PHP 5.3.3, ZF 1.11.1 vers un nouveau serveur avec ZendServer 6.2, PHP 5.4.21, ZF 2.2.5/ZF 1.12.3.
Première question, sous ZendServer 6.2 on à deux librairies ZF, comment savoir laquelle est utilisée?
Deuxième question, pour mes applications lorsque j'essaie de les lancer, je tombe sur une page 404 NOT FOUND.
Les paramétrages .htaccess, index.php, bootstrap.php ont-ils changés dans cette nouvelle version ?
J'ai le message suivant dans les logs apaches
[Fri Nov 22 15:07:38 2013] [error] [client 127.0.0.1] File does not exist: C:/Zend/Apache2/htdocs/cdl/Auth
Cordialement
Dernière modification par MathieuPortBoulogne (27-11-2013 15:58:08)
Hors ligne
Voici mon fichier .htaccess
# Règles de réécriture pour Zend Framework RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] # Sécurité : Ne pas autoriser le parcours de répertoires Options -Indexes
Hors ligne
voici mon fichier index.php
<?php /* * création de APPLICATION_PATH qui est une variable * permetant de pointer directement sur le répertoire de l'application */ define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/application/')); //on garde en mémoire certains liens de dossiers afin d'accélérer leur appel set_include_path( //APPLICATION_PATH . '/../library' 'D:/Zend/ZendServer/GUI/library/' . PATH_SEPARATOR . APPLICATION_PATH . '/models/' . PATH_SEPARATOR . APPLICATION_PATH . '/forms/' . PATH_SEPARATOR . APPLICATION_PATH . '/plugins/' . PATH_SEPARATOR . get_include_path() ); /* * mise en place de l'autoloading des librairie de Zend * pour ne pas avoir à charger chaque classe une par une */ require_once 'Zend/Loader/Autoloader.php'; $autoloader = Zend_Loader_Autoloader::getInstance(); $autoloader->setFallbackAutoloader(true); //on charge le fichier bootstrap afin d'initialiser l'application try { require 'application/bootstrap.php'; } //si cela ne fonctionne pas on génère une exception (erreur interrompant tout processus) catch (Exception $exception) { //affichage d'un message d'erreur echo '<html><body><center>' . 'An exception occured while bootstrapping the application.'; //on est pas en environnement de production on affiche le détail de de l'exception if (defined('APPLICATION_ENVIRONMENT') && APPLICATION_ENVIRONMENT != 'production' ) { echo '<br /><br />' . $exception->getMessage() . '<br />' . '<div align="left">Stack Trace:' . '<pre>' . $exception->getTraceAsString() . '</pre></div>'; } echo '</center></body></html>'; exit(1); } //on retourne la demande faite au serveur try { Zend_Controller_Front::getInstance()->dispatch(); } //si cela ne fonctionne pas on génère une exception (erreur interrompant tout processus) catch (Exception $exception) { //affichage d'un message d'erreur echo '<html><body><center>' . 'An exception occured while bootstrapping the application.'; //on est pas en environnement de production on affiche le détail de de l'exception if (defined('APPLICATION_ENVIRONMENT') && APPLICATION_ENVIRONMENT != 'production' ) { echo '<br /><br />' . $exception->getMessage() . '<br />' . '<div align="left">Stack Trace:' . '<pre>' . $exception->getTraceAsString() . '</pre></div>'; } echo '</center> <button onclick="window.location.reload();">Réessayer</button> </body></html>'; exit(1); }
Hors ligne
voici mon fichier bootstrap.php
<?php // Step 1: Définition des constantes de l'application defined('APPLICATION_PATH') or define('APPLICATION_PATH', dirname(__FILE__)); defined('APPLICATION_ENVIRONMENT') //affectation de l'environnement courant pour le projet or define('APPLICATION_ENVIRONMENT', 'development'); //variable d'environnement temporaire $_ENV['TMP']="D:\Zend\ZendServer\tmp\application"; /* * Step 2: * initialisation du Zend_Controller_Front * implémente un modèle dans lequel toutes les demandes sont arrêtées par le contrôleur frontal * et distribuées vers différents contrôleurs d'action basés sur l'URL demandé. */ $frontController = Zend_Controller_Front::getInstance(); // Step 3: Définition du lieu où sont stockés les contrôleurs $frontController->setControllerDirectory(APPLICATION_PATH . '/controllers'); // Step 4: Enregistrement de l'environnement de développement courant $frontController->setParam('env', APPLICATION_ENVIRONMENT); // LAYOUT SETUP - Initialisation du layout de l'application Zend_Layout::startMvc(APPLICATION_PATH . '/layouts/scripts'); // VIEW SETUP - Initialisation des propriété des vues $view = Zend_Layout::getMvcInstance()->getView(); $view->doctype('XHTML1_STRICT'); // CONFIGURATION - Enregistrement du fichier de configuration $configuration = new Zend_Config_Ini( APPLICATION_PATH . '/config/app.ini', APPLICATION_ENVIRONMENT ); // DATABASE ADAPTER - Enregistrement des informations liées à la base de données $dbmysql = Zend_Db::factory($configuration->database); $dbmssql = Zend_Db::factory($configuration->database2); // DATABASE TABLE SETUP - Initialisation de l'objet Database Table Adapter Zend_Db_Table_Abstract::setDefaultAdapter($dbmysql); // REGISTRY - création des registres de données de l'application $registry = Zend_Registry::getInstance(); $registry->configuration = $configuration; $registry->set('dbMySQL',$dbmysql); $registry->set('dbMsSQL',$dbmssql); //ACL | AUTH - Initialisation de la configuration liée à l'authentification et aux droits d'accès //on récupère l'instance d'authentification de Zend $auth = Zend_Auth::getInstance(); //on controle à l'aide du plugin les droits d'accès en fonction de l'authentification récupérée $frontController->registerPlugin(new MyPluginAuth($auth)); // PAGINATOR - Initialisation du système de pagination Zend_View_Helper_PaginationControl::setDefaultViewPartial('paginate.phtml'); // CLEANUP - on vide les variables courantes unset($dbMySQL,$frontController, $view, $configuration, $registry); date_default_timezone_set("Europe/Paris"); ?>
Hors ligne
Bon visiblement le problème vient de l’interprétation de l'url avec le controleur.
Lorsque je lance une application avec http://localhost/consultdsp ça fonctionne.
Lorsque que je charge la même page avec le nom du controleur http://localhost/consultdsp/Index j'ai l'erreur 404.
Hors ligne
Salut, penses à éditer ton poste plutôt que d'en faire plusieurs .
Hors ligne
Désolé en effet j'aurai dû éditer mon post.
Bon j'ai trouvé la réponse à mes questions
- pour la librairie utilisée, j'ai précisé dans mon index.php
$zf2Path = zend_deployment_library_path('Zend Framework 1', '1.12.3');
- pour le problème 404 Page Not Found, c’était un problème de configuration d'apache sur le dossier httpd.conf
AllowOvverride None
vers
AllowOvverride All
Hors ligne
Pages: 1