我正在Digital Ocean上向Ubuntu部署一个项目,使用这些说明书
我遇到了权限问题,如果我授予这些权限sudo chown -R www-data.www-data /var/www/project/storage sudo chown -R www-data.www-data /var/www/project/bootstrap/cache
我可以访问我的登录页面(尽管每隔一条路由都会出现500个错误(,但每当我尝试运行php artisan optimize、route:clear等时,我也会得到The stream or file "/var/www/project/storage/logs/laravel.log" could not be opened in append mode: failed to open stream: Permission denied
。
如果我设置了这个的权限
sudo chown -R $USER /var/www/project/storage sudo chown -R $USER /var/www/project/bootstrap/cache
我遇到了相反的问题,我可以运行artisan命令并写入日志,但没有页面可访问。
如有任何帮助,将不胜感激
除了设置group
和owner
的chmod -R www-data.www-data /var/www/project
之外,您可能还需要更改特定的dir
权限。
sudo chmod -R 775 /var/www/project/storage/
sudo chmod -R 775 /var/www/project/bootstrap/cache
如果您试图在服务器上的/var/www/project
目录中执行操作,请确保您登录到服务器的user
与www-data
组中的一样。
只需在shell中键入groups
,就可以检查您所在的组。如果在返回的列表中没有看到www-data
,请添加自己。
usermod -aG www-data $USER
一旦您将自己添加到www-data
组,您将需要重新登录以使更改生效。
您需要将boostrap缓存文件夹和laravel.log文件更改为读取、写入和执行。去你的laravel项目,并把这个代码
sudo chmod 777 bootstrap/cache/
sudo chmod 777 storage/logs/*.log