2010-03-21 3 views
1

J'expérimente avec codeigniter mais je ne comprends pas vraiment comment fonctionnent les liens.liens dans codeigniter

par exemple, j'ai un lien comme celui-ci:

localhost/ci/accueil/chat/7

Mon URL de base est localhost/ci, en cliquant sur ce lien, je me attends à la méthode "chat" du contrôleur "bienvenue" à appeler.

Cette méthode est très simple:

function cat() 
    { 
     echo "just a test."; 
    } 

Assez basique - j'attendre à voir le texte à l'écran, mais je vois juste un 404 -page introuvable erreur.

Quel pourrait être le problème?

Répondre

2

Avez-vous configuré correctement mod_rewrite (ou la réécriture d'URL en général) pour CodeIgniter? Ce n'est pas pris en charge hors de la boîte.

Ils ont quelques instructions dans leur wiki.

+0

Je possède ce fichier htaccess: RewriteEngine on RewriteCond 1 $^(index \ .php | images | captcha | css | js | robots \ txt) RewriteRule^/index.php/ de $! (*). $ 1 [L] Je l'ai copié à partir du livre que j'utilise pour apprendre le codeigniter, donc je ne suis pas entièrement sûr de ce qu'il fait. Pensez-vous que c'est bon? – Patrick

+0

PS ne sais pas si cela fait une différence, mais j'utilise MAMP – Patrick

+0

Une sorte de "réponse différée", mais avez-vous activé mod_rewrite pour Apache? Vous devez éditer httpd.conf pour le faire. – Veeti

0

J'ai eu des problèmes avec la règle de réécriture suggéré dans le guide de l'utilisateur. Je recevais aussi 404s. J'ai dû supprimer la barre oblique avant index.php dans la règle. Comme le dit Veeti, n'oubliez pas d'activer mod_rewrite pour Apache.

+0

Suppression de la barre oblique mais ne fonctionne toujours pas. J'ai vérifié le fichier httpd.conf (dans mamp/conf/apache) et il contient ceci: LoadModule rewrite_module modules/mod_rewrite.so donc je pense que le module est chargé correctement? J'ai essayé avec quelques liens différents, et j'ai remarqué que localhost/ci/welcome/test ouvre un google 404 ("oups ce lien semble être cassé) while localhost/ci/index.php/welcome/test ouvre un codeigniter 404. – Patrick

+0

Lorsque vous allez à localhost/ci/index.php/welcome, voyez-vous la page d'accueil de CodeIgniter? –