7
votes

Zend Framework - "Contrôleur non valide spécifié"

J'ai un problème avec la configuration de mon application Zend Framework sur Live Server. Cela fonctionne bien sur localhost.

mon adresse de serveur en direct où j'ai l'application est: p>

http: // www.domainname.com/new/ p>

Tout va bien jusqu'à ce que j'essaie d'accéder à mon module d'administration à URL http://www.domainname.com/new/admin , alors je reçois l'erreur ci-dessous. P>

Des idées? P>

[production]
webhost = "http://www.domainname.com/new"

phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

includePaths.library = APPLICATION_PATH "/../library"

date.timezone = "Europe/Bratislava"

bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"

appnamespace = "Application"
autoloadernamespaces.nette = "Nette_"
autoloadernamespaces.jakub = "Jakub_"

resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"

resources.view[] =
resources.view.helperPath.App_View_Helper = APPLICATION_PATH "/views/helpers"

resources.modules[] =

resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/default/"
resources.layout.layout = default

admin.resources.layout.layoutPath = APPLICATION_PATH "/modules/admin/layouts/scripts/base/"
admin.resources.layout.layout = default

[staging : production]

[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1

[development : production]
webhost = "http://domainname"

phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1


0 commentaires

3 Réponses :


6
votes

Dans votre dossier Module Admin, vérifiez que IndexController.php existe dans le sous-répertoire "Contrôleurs".

Si tel est le cas, ouvrez indextroller.php et assurez-vous que la déclaration de classe déclare effectivement la classe "IndexController" (une copie commune + Pâte Piefall)

Edit: le nom du contrôleur doit être Admin_indexController, pas seulement indextrextroller


5 commentaires

Tout dans le contrôleur va bien, il existe, nom est "Class Admin_indexController".


Et le nom de fichier est indexcontroller.php, l'application fonctionne bien sur localhost, de sorte que le problème sera probablement dans des chemins probablement ou une certaine configuration.


Le nom de la classe doit être indexcrexeur, pas admin_indexcontroller.


En fait, mon commentaire original est incorrect - il devrait être admin_indexcontroller


Le nom de fichier doit être indexcontroller.php (notez la première capitale). Sous Windows, cela fonctionne. Sur UNIX est le système de fichiers sensible à la casse et il échoue donc.



0
votes

Essayez dans votre application.ini: xxx pré>

i'ai aussi dans mon application.ini pour mon application de module: p> xxx pré>

Chaque module a également son propre bootstrap? P>

<?php

class Admin_Bootstrap extends Zend_Application_Module_Bootstrap {
    //put your code here
}


0 commentaires

0
votes

J'utilisais un contrôleur d'authentification mon collègue préparé et j'avais le même problème, et j'ai trouvé le problème dans la redirection du contrôleur. xxx

Ceci vérifie essentiellement si vous êtes connecté si vous êtes connecté si vous êtes connecté. et si vous avez le droit d'accès à accéder au contrôleur spécifié, il vous redirige de (dans ce cas) par défaut / authenticulé / index Malheureusement, les paramètres de redirection ne sont pas affichés dans le message d'erreur. J'ai réalisé que je n'ai pas le contrôleur que je redirige à l'emploi, donc dans certains cas, cela pourrait être le même problème.


0 commentaires