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

jew*_*ses 6 php file-permissions nginx laravel laravel-7

我遵循了这个赞成的答案并执行了以下操作:

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
Run Code Online (Sandbox Code Playgroud)

一切正常,但是每当一个目录(在存储目录中)由 my-user 而不是 www-data 用户创建时,网络服务器就无法写入它,反之亦然。除非我在创建目录后重新运行这些命令。

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

此外,my-user 已经在 www-data 组中。

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

Muh*_*kur 0

选项 1 将 www-data 组添加到 my-user:

sudo adduser www-data my-user
Run Code Online (Sandbox Code Playgroud)

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

在www.conf中找到options user和group,修改为[my-user] group=mygroup