我正在尝试在数字海洋上安装laravel应用。当我运行命令php artisan migrate --seed
时,当它到达播种机之一时出现以下错误:
The stream or file "/var/www/test.mysite.com/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied
我遵循了DO教程(https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-laravel-with-nginx-on-ubuntu-20-04)并添加了以下权限:
sudo chown -R www-data.www-data /var/www/test.mysite.com/storage
sudo chown -R www-data.www-data /var/www/test.mysite.com/bootstrap/cache
那为什么它仍会抛出拒绝权限错误?
答案 0 :(得分:2)
运行此命令以获取存储权限
sudo chmod -R 755 storage/
您还可以设置nginx允许模式
semanage permissive -a httpd_t
nginx允许模式对我来说很好。
答案 1 :(得分:0)
设法解决。我需要给我自己(登录的ssh用户)该目录和Webser的所有权,如下所示:
sudo chown -R $USER:$USER /var/www/test.mysite.com
sudo chgrp -R www-data /var/www/test.mysite.com/storage /var/www/test.mysite.com/bootstrap/cache
sudo chmod -R ug+rwx /var/www/test.mysite.com/storage /var/www/test.mysite.com/bootstrap/cache