I'm pretty new at laravel, in fact and I'm trying to create my very first project. for some reason I keep getting this error (I haven't even started coding yet)
Error in exception handler: The stream or file "/var/www/laravel/app/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied in /var/www/laravel/bootstrap/compiled.php:8423
I've read this has something to do with permissions but chmod -R 775 storage
didn't help at all.
To fix this issue, you need to change the ownership of the directory to the unix user that the webserver uses.
Even though I created the project within the VM using the VM user, the folder belonged to the user in the real computer; so, when trying to
Now it's working.
Thanks to all those that helped me figure this thing out
EDIT:
Actually, it still wasn't working, it still gave me a "permission denied" problem.
Here's what I did, I modified my Vagrantfile like this:
Never use 777 for directories on your live server, but on your own machine, sometimes we need to do more than 775, because
Means
If your webserver is not running as Vagrant, it will not be able to write to it, so you have 2 options:
or change the group to your webserver user, supposing it's
www-data
:This solution is specific for laravel 5.5
You have to change permissions to a few folders: chmod -R -777 storage/logs chmod -R -777 storage/framework for the above folders 775 or 765 did not work for my project
Also the ownership of the project folder should be as follows (current user):(web server user)
For this error:
Error in exception handler: The stream or file "/var/www/laravel/app/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied in /var/www/laravel/bootstrap/compiled.php:8423
use this command in terminal:
You could do:
Add to
composer.json
After
composer install