Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 20-02-2009 15:53:41

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

The requested URL /www/test/html/toto was not found on this server.

Bonjour. Ca fait plusieurs jours que j'essaye de créér un simple controller toto sans succès. (je débute)
Aucun de mes controllers ne marche à part IndexController.

Voici mon arborescence:

application
  controllers
    IndexController.php
    TotoController.php
  models
  views
    scripts
      index
        index.phtml
      toto
        index.phtml
html
  index.html

Voici ce que contient le fichier html/index.php:

<?php
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
Zend_Controller_Front::run('../application/controllers');
?>

et TotoController.php:

<?php
class TotoController extends Zend_Controller_Action
{
    public function indexAction()
    {
    }
}
?>

Donc lorsque je vais à l'adresse http://127.0.0.1/www/test/html/index il m'affiche bien la vue index/index.phtml
mais lorsque je vais à l'addrese http://127.0.0.1/www/test/html/toto j'obtiens une erreur comme quoi il ne trouve pas le fichier.

Est-ce que j'aurais oublié quelque chose?
Merci d'avance.

Dernière modification par hypno (20-02-2009 15:57:12)

Hors ligne

 

#2 20-02-2009 16:11:12

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: The requested URL /www/test/html/toto was not found on this server.

Salut,

As-tu mis en place les bonnes règles de ré-écritures pour ton site ?

Code:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Toutes les requêtes hors ressources doivent être redirigées vers l'index (qui sert de bootstrap ou invoque un bootstrap) pour que le frontController fasse son boulot.


A+ benjamin.


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#3 20-02-2009 16:29:58

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

Oui.  Et lorsque je vais sur http://127.0.0.1/www/test/html/toto/index , j'obtiens la même erreur.
Par ailleurs, avec le tuto ZendFrameworkQuickstart qu'on trouve sur le site officiel, j'ai le même problème. Seul l'index fonctionne. En cliquant sur guestbook par exemple, j'obtiens:
The requested URL /www/ZendFrameworkQuickstart/public/guestbook was not found on this server.

Dernière modification par hypno (20-02-2009 16:34:50)

Hors ligne

 

#4 21-02-2009 16:06:41

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: The requested URL /www/test/html/toto was not found on this server.

Bonjour,

C'est un problème de réécritures, sinon tu ne peux pas avoir de "not found".

Si ton .htaccess est bon, qu'il est lisible par apache, il y a sans doute un problème dans ta configuration apache.

Est-ce que tu as la configuration Allowoverride All dans ton fichier httpd.conf ? cette configuration indique à apache que les fichiers .htaccess peuvent modifier les configurations du serveur apache.

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#5 21-02-2009 20:22:03

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

bonjour,
j'ai rajouté à la fin du fichier apache2.conf (httpd.conf n'existe plus avec apache2) la ligne suivante:

<Directory />
AllowOverride All
</Directory>

Puis j'ai relancé apache.

Mais ca ne marche toujours pas sad

Hors ligne

 

#6 23-02-2009 17:30:45

gauthier
Membre
Date d'inscription: 30-09-2008
Messages: 116
Site web

Re: The requested URL /www/test/html/toto was not found on this server.

j'obtiens une erreur comme quoi il ne trouve pas le fichier.

bonojur,

pourrais-tu préciser quel fichier le framework se plaint-il de ne pas trouver ?


Consultant Zend Technologies // Blog perso : Logiciel libre et développement web -- http://freeblogware.org

Hors ligne

 

#7 23-02-2009 17:56:52

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

/www/test/html/toto c'est le titre du topic smile

Hors ligne

 

#8 23-02-2009 18:08:23

gauthier
Membre
Date d'inscription: 30-09-2008
Messages: 116
Site web

Re: The requested URL /www/test/html/toto was not found on this server.

au temps pour moi smile je n'avais pas fait attention au titre, et donc je ne savais pas s'il s'agissait d'une 404 ou d'une exception levée par ZF !

Essaies donc de virer cette règle :

Code:

RewriteRule ^.*$ - [NC,L]

ça pourrait aller mieux ensuite smile


Consultant Zend Technologies // Blog perso : Logiciel libre et développement web -- http://freeblogware.org

Hors ligne

 

#9 23-02-2009 18:16:05

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

Ca ne marche toujours pas sad

Hors ligne

 

#10 23-02-2009 18:25:06

gauthier
Membre
Date d'inscription: 30-09-2008
Messages: 116
Site web

Re: The requested URL /www/test/html/toto was not found on this server.

alors je te suggère d'essayer de remplacer ton .htaccess par ça :

Code:

RewriteEngine on
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php

et en passant, me confirmes-tu que le fichier .htaccess se trouve bien dans le dossier html/.htaccess ?


Consultant Zend Technologies // Blog perso : Logiciel libre et développement web -- http://freeblogware.org

Hors ligne

 

#11 23-02-2009 23:09:26

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

desolé mais ça ne marche pas mieux sad
et oui je confirme que mon .htaccess est bien dans le dossier html.

Hors ligne

 

#12 24-02-2009 08:07:04

benji07
Membre
Lieu: Valence
Date d'inscription: 12-02-2008
Messages: 20

Re: The requested URL /www/test/html/toto was not found on this server.

dans le dossier html, il faut un index.php et pas index.html smile

Hors ligne

 

#13 24-02-2009 10:10:51

gauthier
Membre
Date d'inscription: 30-09-2008
Messages: 116
Site web

Re: The requested URL /www/test/html/toto was not found on this server.

gg benji !!! comment a-t-on pu rater ça ??? wink


Consultant Zend Technologies // Blog perso : Logiciel libre et développement web -- http://freeblogware.org

Hors ligne

 

#14 24-02-2009 13:06:19

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

malheureusement je me suis trompé lorsque je vous ai donné l'arborescence. Mon fichier s'appellait bien index.php.
Je pense que le mieux est que je vous montre mon archive que vous pourrez télécharger à cet endroit:
http://dl.free.fr/ft9U1IfDi
(j'ai volontairement supprimé le fichier test/library pour des raisons de place)


En fait ça se compresse bien avec le dossier library:
http://dl.free.fr/uHQN1wilk (1.7 mo)

Dernière modification par hypno (24-02-2009 13:16:43)

Hors ligne

 

#15 24-02-2009 16:01:23

hypno
Nouveau membre
Date d'inscription: 20-02-2009
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

OK je viens enfin de résoudre le problème.
Alors pour ceux qui utilisent apache2 sous ubuntu comme moi, il faut modifier le fichier /etc/apache2/sites-available/default
et remplacer AllowOverride None par AllowOverride all.
Merci à tous pour votre aide.

Hors ligne

 

#16 07-04-2009 19:15:26

citronbleu-v
Membre
Lieu: Béziers ou Arles
Date d'inscription: 03-02-2009
Messages: 79
Site web

Re: The requested URL /www/test/html/toto was not found on this server.

ça ne marche toujours pas chez moi ça

Hors ligne

 

#17 07-04-2009 22:34:14

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: The requested URL /www/test/html/toto was not found on this server.

Ca serait bien de préciser dans votre signature votre environnement, ca évite les erreurs du genre http.conf ou apache2.conf. Et certains ne connaissent pas du tout le monde linux et à l'invcerse le monde windows comme moi pour les confs spécifiques à WAMP ou EasyPHP.


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#18 10-07-2009 17:39:20

jp
Nouveau membre
Date d'inscription: 05-10-2007
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

Bonjour

J'ai un problème identique sur Windows avec Zend Server.

Mon Application ZF gère elle même les modules,controllers et actions inexistant(e)s en affichant une page 'Propre'.

Cela fonctionne très bien avec WAMP  tandis qu'avec Zend Server j'ai une erreur 404 de niveau serveur.

Cela n'est pas un problème de rewrite. Dès que je remet  le serveur Apache de Lamp, ca re-fonctionne.

Je continue de chercher.

Cdt

Dernière modification par jp (10-07-2009 17:39:52)

Hors ligne

 

#19 11-07-2009 11:47:31

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: The requested URL /www/test/html/toto was not found on this server.

bon je crois que vois avez besoin de lire la doc c'est un truc qui existe depuis toujours

Les tuto ne peuvent pas savoir à quel niveau de la hiérarchie de votre serveur vous installez votre application il partent dont tous ou presque du postulat que c'est à la racine.

si ce n'est pas le cas la doc dit clairement qu'il faut positionner dans le bootstrap le paramètre baseUrl qui est le partie du chemin de votre racine serveur (documentRoot apache) jusqu'au dossier dans le quel est installé votre application.
normalement www est le documentroot et ne doit donc pas apparaître dans l'URL.
pour vérifier placer un fichier toto.txt dans le dossier www et ouvrez http://localhost/toto.txt si www est le documentRoot vous devez voir votre fichier sinon c'est que www n'est pas le documentRoot

en suposant que c'est bien la cas. dans le bootstrap de votre application il faut ajouter un appel à setBaseUrl
et lui donner comme paramètre "/test/html/" (html étant le dossier de votre application).

l'appel à la page sera http://localhost/test/html ou http://localhost/test/html/index http://localhost/test/html/toto etc.

A+JYT

Hors ligne

 

#20 15-07-2009 17:32:15

jp
Nouveau membre
Date d'inscription: 05-10-2007
Messages: 8

Re: The requested URL /www/test/html/toto was not found on this server.

sekaijin a écrit:

bon je crois que vois avez besoin de lire la doc c'est un truc qui existe depuis toujours

J'ai l'habitude de lire la doc avant de poster, mais il est toujours possible de passer à coté d'une information pertinente (d'où l'utilité des forums).

Je précise donc que dans les 2 cas , la config du site est la même, en dehors de la racine du serveur, avec le même baseurl. Après dump l'objet Request est le même dans les 2 cas, ce qui cadre bien avec la doc

Code:

5.5. Base URL et sous dossiers
Le routeur de réécriture peut être utilisé dans des sous dossiers (comme http://domain.com/~user/application-root/), dans un tél cas, l'URL de base de l'application (/~user/application-root) devrait être automatiquement détectée par Zend_Controller_Request_Http et utilisée ensuite. 
Si ça n'était pas le cas, vous pouvez spécifier votre propre base URL dans Zend_Controller_Request_Http en appelant setBaseUrl() (voyez Section 4.2.2, « Base de l'URL et sous-dossiers ») : 

$request->setBaseUrl('/~user/application-root/');

// DUMP de l'objet Request
object(Zend_Controller_Request_Http)#66 (14) {
  ["_paramSources:protected"] => array(2) {
    [0] => string(4) "_GET"
    [1] => string(5) "_POST"
  }
  ["_requestUri:protected"] => string(19) "/zendev/aaaaa/bbbbb"
  ["_baseUrl:protected"] => string(7) "/zendev"
  ["_basePath:protected"] => NULL
  ["_pathInfo:protected"] => string(12) "/aaaaa/bbbbb"
  ["_params:protected"] => array(3) {
    ["controller"] => string(5) "aaaaa"
    ["action"] => string(5) "bbbbb"
    ["module"] => string(7) "default"
  }
  ["_aliases:protected"] => array(0) {
  }
  ["_dispatched:protected"] => bool(true)
  ["_module:protected"] => string(7) "default"
  ["_moduleKey:protected"] => string(6) "module"
  ["_controller:protected"] => string(5) "aaaaa"
  ["_controllerKey:protected"] => string(10) "controller"
  ["_action:protected"] => string(5) "bbbbb"
  ["_actionKey:protected"] => string(6) "action"
}

Maintenant j'ai approfondi un peu le problème. Je rentre bien dans le contrôleur d'erreurs dans les 2 environnements.
Voici le code du contrôleur

Code:

    public function errorAction()
    {
        // Clear previous content
        $this->getResponse()->clearBody();
        /* @var $e Zend_View_Exception  */
        $errors = $this->_getParam('error_handler');
        $e = $errors->exception;
        $this->view->baseUrl = $this->_request->getBaseUrl();
        $this->view->title = __('site.titre');

        switch ($errors->type) {
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
                // 404 error -- controller or action not found

                $this->getResponse()->setHttpResponseCode(404);
                //$this->getResponse()->setRawHeader('HTTP/1.1 404 Not Found');

                //$this->getResponse()->setHeader('Cache-Control','no-cache, must-revalidate');
                //$this->getResponse()->setHeader('Expires','Sun, 07 Feb 1954 05:00:00 GMT');

                $this->view->title .= " - ".__('site.notfound404');
                $this->view->message  = __('site.notfound404');
                $this->view->message .= " : ";
                $this->view->message .= $this->getRequest()->getParam('module');
                $this->view->message .= "/".$this->getRequest()->getParam('controller');
                if ($this->getRequest()->getParam('action') != "")  {
                    $this->view->message .= "/".$this->getRequest()->getParam('action');
                }
                if (Itpzf_Config::getDebugActive())
                    {
                    $this->view->message .= "<br>Application: ".$this->getRequest()->getParam('module')
                                           ."<br>Controler: ".$this->getRequest()->getParam('controller')
                                           ."<br>Action: ".$this->getRequest()->getParam('action');
                    }
                break;
            default:
                // application error; display error page, but don't change
                // status code
                $this->view->title = __('site.error');
                if (Itpzf_Config::getDebugActive())  {
                    $msg = $e;
                }
                else  {
                    $msg = $e->getMessage();
                }
                $this->view->message = "<pre>".$msg."</pre>";
                break;
        }
        // call generic error view
        $this->render ('error',null,true);
    }

Avec WAMP - > le layout fait son boulot et la vue également.
Avec ZendServer -> page erreur 404 classique.

Mais :
  - Que cela soit avec setRawHeader ou setHttpResponse, le résultat est le même
  - Si j'organise différemment (preDispatch,action et postDispatch) -> ca ne change rien
  - Si je commente le setHttpResponseCode ou si je met un code != de 404 -> ca marche

Et pour finir, le fichier de conf du site inclus dans les httpd.conf d'apache de Wamp et de ZendServer.
Il n'y a pas de .htAccess.
Ce code fonctionne parfaitement sur les machines de production installées en ..... Zend Core,Zend Platform.

Code:

Alias /zendev/ "C:/DevWeb/Neon_workspace/ZenDev_Site/html/"

<Directory "C:/DevWeb/Neon_workspace/ZenDev_Site/html/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
    RewriteEngine on
    RewriteRule !\.(js|ico|gif|jpg|png|css|xml|swf)$ index.php
    RewriteBase /zendev/
</Directory>

Voilà tout. Si je ne résout pas ce problème, je retourne à Wamp.
@+

Info du 16/07
La page d'erreur est correcte lorsque le site est appelé à partir d'un poste en réseau.
Il semble donc que le problème soit lié à localhost + ZendServer

Dernière modification par jp (16-07-2009 14:15:27)

Hors ligne

 

#21 02-07-2010 18:23:52

Doubleslash
Membre
Date d'inscription: 28-05-2010
Messages: 10

Re: The requested URL /www/test/html/toto was not found on this server.

Bonjour à tous,
J'avais le même problème avec WAMP. Je suppose que vu l'ancienneté du message c'est déjà corrigé, mais j'ai eu le même soucis et Google m'a renvoyé par ici. C'est visiblement la redirection qui pose problème :

Au lieu de :
RewriteRule ^.*$ index.php [NC,L]

J'ai mis :
RewriteRule ^.*$ http://localhost/App_Zend/index.php [NC,L]
(App_Zend étant l'alias par lequel j'accède au site)

Pour moi ça marche. J'espère que cela pourra aider les autres.
Bonne journée.

Hors ligne

 

#22 22-06-2016 00:48:14

youstra
Nouveau membre
Date d'inscription: 15-06-2016
Messages: 1

Re: The requested URL /www/test/html/toto was not found on this server.

Salut à tous!
Ce framework est nouveau pour moi, et j'ai le même problème.
Depuis quelques jours aujourd'hui, j'arrive pas à accéder à mes autres pages. Seule la page d'accueil (index) est accessible. Je travaille sous ubuntu 14.04 et j'utilise le serveur apache2.
De plus dans mon /etc/apache2/sites-available, j'ai pas le fichier default mais plutot 000-default.conf et default-ssl.conf. Il y a aussi zendserver_gui.conf. Seul dans le fichier zendserver_gui.conf on retrouve la ligne AllowOverride (qui est à None initialemen).

Quelqu'un pourrai me venir en aide!?

Dernière modification par youstra (22-06-2016 00:49:54)

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