Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 14-09-2008 12:19:08

Pwill
Nouveau membre
Date d'inscription: 13-09-2008
Messages: 3

Erreur 404 en local avec Wamp 2.0

Bonjour à tous !

Je souhaiterais me mettre à Zend et j'ai donc créé un répertoire "test" dans le "www" de mon Wamp. J'y ai déjà d'autres sites qui fonctionnent bien, avec rewrite_module activé et fonctionnel.
J'ai bien AllowOverride all dans <Directory "d:/wamp/www/"> du php.ini.
J''ai décoché magic_quotes_gpc et register_globals depuis le menu de config de wamp. J'ai coché short_tag_open.

Ayant suivi le tutoriel MVC http://g-rossolini.developpez.com/tutor … k/debuter/ j'ai l'architecture suivante :

www/site1/...
www/site2/...
www/test/application :
- models
- views
                - scripts
                                     - index avec index.phtml
                                     - truc avec index.phtml, action.phtml

                - helpers avec BaseUrl.php
- controlers avec IndexController et TrucController
- layouts avec layout.phtml

www/test/public :
- css avec site.css
- images
- js

Dans www/test/ j'ai aussi le .htaccess suivant :

Code:

# Règles de réécriture pour Zend Framework
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php

# Sécurité : Ne pas autoriser le parcours de répertoires
Options -Indexes

# Configuration PHP
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag short_open_tag on

et le index.php suivant :

Code:

<?php
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors', 1);
date_default_timezone_set('Europe/Paris');

// mise en place des répertoires et chargement des classes
set_include_path('.'
    . PATH_SEPARATOR . './library'
    . PATH_SEPARATOR . './application/models/'
    . PATH_SEPARATOR . get_include_path());
include "Zend/Loader.php";
Zend_Loader::registerAutoload();

// setup controller
$frontController = Zend_Controller_Front::getInstance();
$frontController->throwExceptions(true);
$frontController->setControllerDirectory('./application/controllers');
Zend_Layout::startMvc(array('layoutPath'=>'./application/layouts'));

// run!
$frontController->dispatch();

Dans mon IndexController j'ai ceci :

Code:

<?php

class IndexController extends Zend_Controller_Action 
{
    function indexAction()
    {
        $this->view->title = "Les héros";
    }

    function ajouterAction()
    {
        $this->view->title = "ajouter blabla";
    }

    function supprimerAction()
    {
        $this->view->title = "supprimer blabla";
    }
}

Le problème est que je peux afficher http://localhost/test/ avec le texte issu de mon IndexController, action index.
Mais http://localhost/test/public/ me retourne le contenu du répertoire, http://localhost/test/public/index/ajouter/ me retourne un 404. Pourtant selon le tuto ces adresses devraient être fonctionnelles.

Que se passe-t-il ? Quelqu'un pourrait m'éclairer svp ?

Hors ligne

 

#2 14-09-2008 13:26:21

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Erreur 404 en local avec Wamp 2.0

Hello,

Je pense qu'il manque peut-être un :

Code:

RewriteBase /test

dans ton .htaccess (mais je ne suis pas un expert) et un :

Code:

$frontController->setBaseUrl('/test');

dans ton index.php (celui-ci c'est sûr).

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#3 14-09-2008 16:15:19

Pwill
Nouveau membre
Date d'inscription: 13-09-2008
Messages: 3

Re: Erreur 404 en local avec Wamp 2.0

Hello !
Merci de ton attention, j'ai essayé tes deux propositions, mais elles n'ont pas solutionné le problème.
J'ai fini par me résoudre à reprendre le tuto de A à Z et m'efforcer de comprendre point par point. Désormais cela marche, sans que je sache ce qui n'allait pas auparavant :'(

Hors ligne

 

#4 14-09-2008 16:41:31

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Erreur 404 en local avec Wamp 2.0

Hello,

Tu as créé un virtual host et modifier ton fichier hosts. C'est ça ?

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#5 14-09-2008 17:10:23

Pwill
Nouveau membre
Date d'inscription: 13-09-2008
Messages: 3

Re: Erreur 404 en local avec Wamp 2.0

Oui j'ai aussi créé un virtual host mais ce point du tutorial est assez obscur pour moi.
Mon virtual host dans le httpd.conf de Wamp (Apache) :

Code:

<VirtualHost *:80>
DocumentRoot d:/WAMP2/www
ServerName localhost
</VirtualHost>

<VirtualHost *:80>
DocumentRoot d:/WAMP2/www/tutoriel-zf/public
ServerName localhost/tutoriel-zf
</VirtualHost>

Du coup, j'ai http://localhost/tutoriel-zf/public/index/ajouter/ qui ne fonctionne pas, pourtant d'après le tutorial cela devrait. Cela me retourne ceci :
Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (public)' in D:\WAMP2\www\tutoriel-zf\library\Zend\Controller\Dispatcher\Standard.php:249 Stack trace: #0 D:\WAMP2\www\tutoriel-zf\library\Zend\Controller\Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 D:\WAMP2\www\tutoriel-zf\index.php(21): Zend_Controller_Front->dispatch() #2 {main} thrown in D:\WAMP2\www\tutoriel-zf\library\Zend\Controller\Dispatcher\Standard.php on line 249

Par contre j'ai http://localhost/tutoriel-zf/index/ajouter/ qui fonctionne sans problème.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages