3 votes

Magento Custom Route/Controller Going to 404

Bonjour! Je tente de créer un module Magento, mais le chemin que j'ai défini dans le config.xml du module mène à une page 404.

Je sais que ce problème est apparu maintes fois, et j'ai passé toute la nuit à lire chaque réponse SO que je pouvais trouver sur le sujet.

Voici ce que j'ai fait :

  1. Nettoyé le dossier var/cache & var/session
  2. Exécuté compiler.php -- clear, compiler.php -- disable, et compiler.php -- compile
  3. Nettoyé & vidé les caches et le stockage du cache dans le panneau d'administration, réindexé depuis l'interface d'administration et en ligne de commande
  4. Créé un nouveau package/module pour les tests, complètement différent de celui que j'utilisais auparavant. Il apparaît dans Système >> Configuration >> Avancé.
  5. Vérifié que Magento n'ajoute pas de code de magasin à l'URL
  6. Simplifié mon code jusqu'à une simple déclaration echo dans la fonction indexAction() de IndexController.php dans mon dossier de contrôleurs.
  7. Essayé de naviguer vers mondomaine.com/cheminpersonnalisé et mondomaine.com/index.php/cheminpersonnalisé et mondomaine.com/cheminpersonnalisé/index/index, et mondomaine.com/index.php/index, et toutes les variations possibles de ceux-ci.
  8. Répété les étapes 1-8 plusieurs fois. xD

Ci-dessous quelques captures d'écran pour référence. Merci d'avance - si quelqu'un a des idées pour aller au-delà de cela, ce serait une vraie bouée de sauvetage. Merci !!

ÉDIT :

Voici le code dans app/etc/modules/Wolverine_Taurine.xml :

            true
            local

Wolverine/Taurine/etc/config.xml :

            1.0

                standard

                    Wolverine_Taurine
                    taurine

Wolverine/Taurine/controllers/IndexController.php :

3voto

monojit Points 621

J'ai utilisé votre module et il fonctionne parfaitement pour moi. Si vous utilisez la plateforme Linux, veuillez donner les autorisations appropriées à tous les fichiers et dossiers. Je pense que cela est dû à la permission des fichiers/dossiers. Modifiez les permissions Linux pour tous les fichiers dans votre répertoire de base Magento pour qu'ils soient lisibles et modifiables par l'utilisateur propriétaire (vous). Définissez les permissions sur 664 pour les fichiers et 775 pour les dossiers. 775 pour les fichiers fonctionneront aussi. Définissez les permissions sur 777 pour media et var, seuls 2 dossiers ont besoin d'être modifiables par tout le monde.

2voto

Wirone Points 801

J'ai eu le même problème, mais la solution était différente. Dans mon cas, c'était un problème de configuration - le développeur précédent avait défini true dans app/etc/local.xml et avait codé en dur la partie frontend de Excellence_Ajax dans app\design\frontend\default\theme392\template\catalog\product\view.phtml au lieu d'utiliser les modèles du module (ou avait également désactivé les modules locaux, ce qui ne fonctionnait pas correctement). Enfin, il effectuait une requête avec ajax (javascript en dur) mais elle n'était pas routée en raison du module désactivé.

Je déboguais comme décrit ici. J'ai lu les journaux et j'ai vu que le module ajax n'était pas trouvé dans les routeurs admin et standard, donc j'ai creusé plus profondément pour voir si la configuration du module était chargée. J'ai ajouté un autre Mage::log() dans app\code\core\Mage\Core\Model\Config.php dans loadModulesConfiguration(), que j'ai trouvé après avoir cherché 'config.xml' dans le projet, et j'ai vérifié la valeur de $disableLocalModules. Voilà.. Si simple mais tellement difficile ;)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X