Laravel 4 itinéraire simple ne fonctionne pas à l'aide de mod_rewrite, et .htaccess
Je ne suis pas seul nouveau à Laravel 4, mais de nouvelles à l'aide de cadres. Je pensais commencer avec Laravel depuis, il a obtenu ces bonnes critiques.
J'ai une bonne installation de Laravel. Je vais à /l4/public et de voir la page d'accueil.
Je suis en train d'ajouter un itinéraire à routes.php de sorte que, lorsque je navigue à /l4/public/articles-je obtenir une réponse.
J'ai "The requested URL /l4/public/articles n'a pas été trouvée sur ce serveur." Ai-je besoin pour exécuter un artisan de la commande pour compiler les routes? C'est probablement quelque chose de facile. Pourquoi ce message?
routes.php
Route::get('/', function()
{
return View::make('hello');
});
Route::get('articles', function ()
{
//return View::make('articles');
return "Articles hello there";
});
- avez-vous mod_rewrite activé sur le serveur?
- Non, je n'ai pas. Ne Laravel s'attendre à ce que?
- Pourquoi diable ne Laravel pas dire dans son de merde tutoriel que nous avons besoin d'activer le mod_rewrite ????
- bienvenue dans le monde de l'open source de documentation.
- Cette réponse de delmadord sauver ma vie! stackoverflow.com/a/24785009/1419350
Vous devez vous connecter pour publier un commentaire.
Problème est résolu par deux modifications dans apache httpd.fichier conf.
AllowOverride None par défaut). La directive AllowOverride contrôle si .fichiers htaccess sont traitées.
mod_rewrite est commenté par défaut.
Modifications à effectuer:
Changement 1: Activer le mod_rewrite en décommentant il.
Changement 2:
Changement
à
Maintenant, redémarrez Apache...
La valeur par défaut .fichier htaccess que Laravel fournit dans le dossier spécifié certaines règles de mod_rewrite. Ces règles sont pas appliquées parce que la directive AllowOverride a été défini sur aucun. Assurez-vous et redémarrer apache après la modification de ces paramètres.
Ma configuration: Apache 2.4.6 sur Windows XP.
Il semble que il peut y avoir certaines incidences sur la sécurité de la directive AllowOverride changement. Si quelqu'un a des informations supplémentaires sur ce, je voudrais l'entendre.
Que l'Erreur de dire que le routeur ne peut pas trouvé votre demande. Assurez-vous que vous avez déjà enregistré vos modifications.
si vous utilisez l'artisan de commande pour l'exécution de la page,tout simplement ré-exécuter à nouveau la commande "artisan Servir".
Vous avez besoin mod_rewrite sur. Essayez: l4/public/index.php/articles
dans httpd.conf changement
à
puis décommenter
à