Question

J'ai: une nouvelle copie vierge de Kohana 2.3.4 (essayé 2.4 RC1 également), un contrôleur nommé "index" sur une Debian avec Apache 2.2.9.

Lorsque je tape une adresse comme http: // localhost / kohana / index / index , j'attends un contrôleur 'index', action 'index' à exécuter. Cela fonctionne sur Windows localhost, fonctionne sur l'hébergement partagé. Mais pas sur mon serveur Debian.

J'ai débogué et trouvé que $ _SERVER ['PATH_INFO'] n'est pas correct. Il omet le premier "index" dans l'URI, je peux donc accéder à "index / index" en allant à "index / index / index". Voilà donc ce que je veux corriger.

Quelqu'un sait-il comment résoudre ce problème?

Était-ce utile?

La solution 2

Il s’est avéré être mod_negotitaion. Ce fichu mod réécrit mon / index / index dans /index.php/index, parce que je pensais avoir manqué .php

Si vous rencontrez ce problème, désactivez simplement mod_negotiation et passez un bon moment

Autres conseils

Je suppose que cela se produit réellement dans votre fichier .htaccess ou dans votre configuration Apache, pas dans Kohana en particulier. Tout d’abord, assurez-vous que le fichier example.htaccess fourni avec Kohana est renommé en .htaccess, et vous devrez peut-être redémarrer Apache.

Si vous utilisez .htaccess pour masquer la partie index.php du chemin, vérifiez si le paramètre RewriteBase est:

RewriteBase /kohana/

Si vous l'avez installé à la racine de votre serveur Web (comme en production ou en utilisant un port séparé pour localhost), il convient de le remplacer par:

RewriteBase /

C'est d'ailleurs mon erreur personnelle la plus commune dans la configuration de nouveaux sites et environnements de développement. Ceci est également vrai pour CodeIgniter et d'autres frameworks PHP associés.

Votre installation Apache sur le serveur Debian utilise-t-elle réellement mod_rewrite? Ce serait bien de le confirmer. Voici un moyen de: faire ça .

Un diagnostic supplémentaire pour voir s’il s’agit d’une faute de Kohana ou d’Apache consiste à rajouter dans la partie index.php du chemin. Dans votre cas, essayez http: //localhost/kohana/index.php/index . Enfin, je suis d’accord avec sarfraz avant de nommer votre contrôleur "index". est juste en quête de problèmes. Ma propre convention est de l'appeler "maison". et pour modifier l'itinéraire par défaut en conséquence.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top