C'est une question liée à l'installation de Laravel. J'ai une configuration de serveur Unix publique:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/mydomain"
ServerName mydomain.org
ServerAlias www.mydomain.org
ErrorLog "/var/log/mydomain.org-error_log"
CustomLog "/var/log/mydomain.org-access_log" common
</VirtualHost>
Je peux servir des documents à partir de / var / www / mydomain ie http://mondomaine.org/test.php avec test.php contenant:
<?php echo 'test';
fonctionne très bien.
En bash, avec Laravel installé via Composer et en regardant les fichiers:
# ls /var/www/mydomain/my-laravel-project
.gitattributes CONTRIBUTING.md artisan composer.json phpunit.xml readme.md vendor
.gitignore app bootstrap composer.lock public server.php
Donc, quand je navigue vers:
http://mydomain.org/my-laravel-project/public/
pourquoi mon dossier de candidature:
Error in exception handler.
dans le navigateur - sur un écran blanc vierge? Je m'attends à voir l'écran de démarrage Laravel.
De plus, les fichiers journaux ne révèlent rien non plus.
/var/log
et voir ce qu'ils ont à dire, le cas échéant.app/storage/logs
? Et tous les répertoires de stockage sont-ils accessibles en écriture?Réponses:
L'option la plus sûre serait de changer le groupe des répertoires de stockage en votre groupe de serveurs Web (généralement
apache
ouwww-data
, mais cela peut varier entre les différents systèmes d'exploitation) et de conserver les autorisations du répertoire comme775
.Ou avec
chown
.Assurez-vous ensuite que les autorisations de répertoire sont
775
.Depuis le site Web de Laravel :
la source
sudo chown -R _www app/storage
(remplacez _www par le nom de votre serveur Apache si nécessaire)chmod -R g+w app/storage
Laravel 5.2
Stockage chmod -R 777
Ancienne application Laravel chmod 777 / stockage / *
Notez que si vous avez un serveur dédié raisonnablement verrouillé sans compte utilisateur autre que le vôtre, 777 ne devrait pas poser plus de risque de sécurité qu'autre chose. Il devrait y avoir une autre vulnérabilité pour qu'un utilisateur malveillant puisse en profiter, et à ce stade, l'autorisation 777 est probablement sans objet de toute façon. Si toutefois vous êtes sur un serveur partagé avec d'autres utilisateurs auxquels vous ne faites pas confiance, vous devrez vous pencher sur des autorisations plus complexes ou vérifier si votre fournisseur d'hébergement a déjà fourni une isolation.
Ils devraient vraiment mettre cela dans la documentation de démarrage rapide et fournir des exemples pour diverses configurations. Vous devrez peut-être l'exécuter à nouveau après le premier chargement, car d'autres répertoires sont créés automatiquement. Recherchez dans vos journaux les erreurs d'écriture.
Votre DocumentRoot doit également être / path / to / laravel-project / public
la source
J'ai supprimé les anciennes sessions dans le
app/storage/sessions
dossier et j'en ai donné la775
permissionapp/storage
après cela, cela fonctionne comme un feu!Bonne chance!
la source
Le train en marche est passé depuis longtemps, mais j'ai encore un autre conseil concernant "Erreur dans le gestionnaire d'exceptions".
Cela m'est arrivé lorsque j'ai lancé "php artisan", ce qui est un bon moyen d'évaluer si votre environnement fonctionne en général.
Je l'ai exécuté et cela m'a donné cette erreur, et je ne pouvais pas identifier le problème tant que je n'ai pas édité le fichier artisan dans le répertoire racine de mon projet et ajouté une instruction try catch:
À quel point j'ai finalement vu un message éclairant:
qui dans mon cas était une mauvaise configuration de redis, mais dans votre cas pourrait être n'importe quoi.
J'espère que cela aidera quelqu'un, ou du moins la prochaine fois que j'arriverai ici, je trouverai ma propre réponse.
la source
could not find driver
. Et puis j'ai découvert que j'avais installéphp-mysql
, alors quephp7.0-mysql
c'était nécessaire. Ce lien m'a également aidé - digitalocean.com/community/tutorials/…Le moyen le plus court de résoudre ce problème est de commencer artisan avec sudo. Cela donnera à l'artisan toutes les autorisations dont il a besoin et ne posera aucun problème de sécurité.
donc au lieu de commencer artisan servir avec:
essayez d'utiliser:
vous n'aurez donc pas à apporter de modifications d'autorisation
la source
J'ai le même problème, je change juste l'autorisation du répertoire app / storage en 775 avec la ligne de commande chmod
la source