Laravel 5: laravel.le journal n'a pas pu être ouvert: Permission Denied
De vous arrêter dès le début, il n'y a PAS de problème d'autorisation. /stockage est récursivement chmodded 777
et de l'ensemble du dossier de projet est chowned par apache:apache
J'ai même renommé le fichier journal à ...-vieux et apache créé un nouveau... si ce n'était pas réel des autorisations d'écriture, il ne serait pas avait été autorisé à le créer.
Fonctionnant sous CentOS version 6.6 (Final)
Déployé le projet de git, le homestead fonctionne pour mon collègue.
D'erreur complet:
[Lundi 18 Mai à 10:17:58 2015] [error] [client 86.124.208.14] PHP Fatal
erreur: Uncaught exception 'UnexpectedValueException' avec message
'Le flux de données ou de fichier
"/var/www/vhosts/mapper.pavementlayers.com/storage/logs/laravel-2015-05-18.journal"
ne peut être ouvert: failed to open stream: Permission denied " dans
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:84\nStack
trace:\n#0
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php(88):
Monolog\Handler\StreamHandler->write(Array)\n#1
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37):
Monolog\Handler\RotatingFileHandler->write(Array)\n#2
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Logger.php(265):
Monolog\Handler\AbstractProcessingHandler->manche(Array)\n#3
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Logger.php(543):
Monolog\Logger->addRecord(400, 'exception 'Symf...', Array)\n#4
/var/www/vhosts/mapper.pavementl dans
/var/www/vhosts/mapper.pavementlayers.com/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php
sur la ligne 84
OriginalL'auteur ied3vil | 2015-05-18
Vous devez vous connecter pour publier un commentaire.
Il se pourrait que SElinux empêche Apache pour créer ce fichier.
Pour tester cela, vous pouvez désactiver SElinux temporellement avec la commande suivante:
Cette place SElinux en mode permissif. Cela signifie que vous recevez toujours un message d'erreur dans votre SElinux fichier journal mais SElinux ne va pas bloquer la commande.
Pour activer SElinux encore une fois, vous pouvez taper:
Ou redémarrer votre serveur CentOS.
Malheureusement, j'ai eu aussi des problèmes avec Laravel 5 sur CentOS et la cause a été SElinux.
J'ai fini avec disabeling SElinux et je sais que ce n'est pas la bonne chose à faire mais je n'ai pas eu le temps d'obtenir les deux travailler ensemble encore!
Mise à jour
J'ai donc enfin eu quand même le temps de les étudier de plus et j'ai SELinux collaboration avec Laravel 5. Je viens de mettre à jour ce post pour les personnes qui pourraient rencontrer ce genre de problème cause désactiver SELinux n'est pas la meilleure stratégie comme mentionné ci-dessus.
Trois choses doivent être faites:
Les dossiers de Stockage et Bootstrap/Cache besoin d'avoir le bon contexte SELinux. Cela peut être réalisé via les commandes suivantes.
Le contexte SELinux doit être appliqué sur les répertoires.
Apache utilisateur doit avoir les droits pour créer des fichiers dans les deux répertoires. Cela peut être réalisé via une ACL dans CentOS 7.
La dernière chose que vous devez faire est de permettre SELinux de nouveau.
pour la plupart tout le monde désactive selinux ensemble sur une nouvelle installation, une pratique courante chez de nombreux administrateurs système
Parfait, donc bon pour le trouver dans la mer de simplement faire de tous les dossiers en 777
Merci pour ce! Mon EC2 Centos 7 instance avait été arrêté en Mars à septembre de cette année n'avait pas le temps. De toute évidence quelque chose a été mis à jour et modifié. J'aimerais savoir ce que c'était. Il était beau en Mars et avait été heureux de la rédaction des journaux!
J'ai passé 8 heures avant de trouvé cette réponse. Merci!
OriginalL'auteur Thomas Snijder
Essayer ces commandes pour
laravel 5
Cela se produit parce que laravel n'avez pas les autorisations pour écrire dans le fichier journal, au moins pour mon cas.
OriginalL'auteur Mustafa Dwekat
Vous devez assurez-vous que le
storage
dossier existe. Si vous effectuez un déploiement à partir de git, assurez-vous que lestorage
dossier est suivi et créé automatiquement.OriginalL'auteur lowerends
Cela a fonctionné pour moi, Laravel 5.4 et au-dessus de
Pas toutes les étapes nécessaires.
OriginalL'auteur ReesBo
SUR Laravel 5.7
$ cd /var/www/html/
$ php artisan cache:clear
Le cache de l'Application effacé!
OriginalL'auteur Lasimin
pour centos 7
OriginalL'auteur Leemarshn