2016-05-25 4 views
0

Je développe une application sur Laravel 5.2. J'en ai terminé avec le développement et le déploiement de l'application sur un serveur Linux. J'ai déplacé le code source en utilisant git et les migrations exécutées. Je peux tout voir mais quand j'accède au projet (n'importe quelle URL) cela donne 404 erreur.Projet Laravel 5.2 - déploiement sous Linux

The requested URL /project_name/public/ROUTE_NAME was not found on this server. 

j'ai vérifié les journaux apache, disent-ils

Wed May 25 17:17:15 2016] [error] [client 172.16.17.15] File does not exist: /var/www/html/project_name/public/ROUTE_NAME 

Laissez-moi vos pensées.

+0

Avez-vous mod_rewrite sur le serveur? –

+0

@VasilShaddix aimerait savoir à ce sujet, laissez-moi savoir ce que j'ai besoin de vérifier. J'ai déployé des applications développeur sur d'autres frameworks mais c'est la première fois sur laravel. –

+0

quelle url vous avez frappé afficher votre fichier de route –

Répondre

0

Le problème éventuel est l'absence du module mod_rewrite sur l'apache.

https://httpd.apache.org/docs/current/mod/mod_rewrite.html

Le système de routage de Laravel travaille. Il prend juste ton url et fait de la magie. Mais sans ce mode, cela ne fonctionnera pas.

Dans votre index.php dans le dossier public essayer

phpinfo();die();

Pour voir si vous avez le mode activé.

Si le mode est inactif, vous pouvez suivre ces instructions

https://stackoverflow.com/a/24354757/4969969

sans qu'il soit nécessaire de modifier l'intégralité du dossier racine du document du serveur:

DocumentRoot "/var/www/html/" .... <Directory "/var/www/html/project_name/public"> Allowoverride All </Directory>

+0

j'ai vérifié phpinfo, je peux voir mod_rewrite dans les modules chargés –

+0

pouvez-vous essayer de courir dans le navigateur /public/index.php/ROUTE_NAME? –

+0

Votre problème est le mod_rewrite. Vous pouvez jeter un oeil à http://stackoverflow.com/a/24354757/4969969 cette réponse. Je pense que c'est bien expliqué. –