如何一劳永逸地设置laravel文件权限

我关注了这一点answer,并做了以下操作:

sudo chown -R my-user:www-data /var/www/domain.com/
sudo find /var/www/domain.com/ -type f -exec chmod 664 {} ;
sudo find /var/www/domain.com/ -type d -exec chmod 775 {} ;
sudo chgrp -R www-data /var/www/domain.com/storage /var/www/domain.com/bootstrap/cache
sudo chmod -R ug+rwx /var/www/domain.com/storage /var/www/domain.com/bootstrap/cache

一切正常,但只要由my-user而不是www-data用户创建目录(存储目录中的),Web服务器就无法向其写入数据,反之亦然。除非我在创建目录后重新运行这些命令。

注意:有时我使用my-user运行创建目录的命令,有时使用www-data用户创建目录。(在存储目录)。

另外,my-User已经在www-data组中。

如何避免权限错误?而无需再次运行所有这些命令。


解决方案

选项1将WWW-Data组添加到My-User:

sudo adduser www-data my-user

选项2将php-fpm的用户改为my-user(ref):

在www.conf中找到选项用户和组,并将其更改为[my-user] group=mygroup

相关文章