You need to change the permissions on storage/
chmod -R 777 storage/
Should do the trick.
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Hi,
I have problem running my laravel project in linux ( fedora 23 lxde 64bit). It was working perfectly on my windows 7.
The page always always shows blank page with error 500. I try to catch exemption on the public/index.php and this error show.
The stream or file "/var/www/html/project_name/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied
below is the output when I run this command under my root dir
drwxrwxr-x. 12 apache apache 4096 Apr 5 03:59 app -rwxrwxr-x. 1 apache apache 1646 Apr 5 03:59 artisan drwxrwxr-x. 3 apache apache 4096 Apr 5 03:59 bootstrap -rw-rw-r--. 1 apache apache 1457 Apr 5 03:59 composer.json -rw-rw-r--. 1 apache apache 124481 Apr 5 03:59 composer.lock drwxrwxr-x. 2 apache apache 4096 Apr 5 03:59 config drwxrwxr-x. 5 apache apache 4096 Apr 5 03:59 database -rw-rw-r--. 1 apache apache 616 Apr 5 04:36 .env -rw-rw-r--. 1 apache apache 622 Apr 5 03:59 .env.example drwxrwxr-x. 8 apache apache 4096 Apr 5 06:28 .git -rw-rw-r--. 1 apache apache 61 Apr 5 03:59 .gitattributes -rw-rw-r--. 1 apache apache 156 Apr 5 03:59 .gitignore -rw-rw-r--. 1 mbesinga mbesinga 1383 Apr 5 06:27 gulpfile.js drwxrwxr-x. 2 apache apache 4096 Apr 5 06:27 gulpscripts drwxrwxr-x. 779 apache apache 32768 Apr 5 04:08 node_modules -rw-rw-r--. 1 apache apache 159 Apr 5 03:59 package.json -rw-rw-r--. 1 apache apache 870 Apr 5 03:59 phpunit.xml drwxrwxr-x. 6 apache apache 4096 Apr 5 04:37 public -rw-rw-r--. 1 apache apache 441 Apr 5 03:59 README.md drwxrwxr-x. 5 apache apache 4096 Apr 5 03:59 resources -rw-rw-r--. 1 apache apache 567 Apr 5 03:59 server.php drwxrwxrwx. 5 apache apache 4096 Apr 5 03:59 storage drwxrwxr-x. 2 apache apache 4096 Apr 5 03:59 tests drwxrwxr-x. 33 apache apache 4096 Apr 5 06:30 vendor
below is my vhost `` <VirtualHost *:80> DocumentRoot "/var/www/html/project_name/public/" ServerName project_name.dev DirectoryIndex index.php index.html
CustomLog "/etc/httpd/logs/project_name.dev-access_log" combined
ErrorLog "/etc/httpd/logs/project_name.dev-error_log"
<Directory "/var/www/html/project_name/public">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
``
figure out some better answer rather than disabling the selinux. I just set the nginx to permissive mode. its works but im not sure in apache.
semanage permissive -a httpd_t
Please or to participate in this conversation.