之前确实有一篇,引用的overtrue的文章,但其实还是不太正常:https://neatstudio.com/show-2912-1.shtml
当时参考的时候,其实比较简单:(基于非ROOT用户)
1、sudo adduser deployer
2、sudo usermod -aG www-data deployer
2、sudo usermod -aG www-data deployer
3、sudo chfn -o umask=022 deployer
4、sudo chown deployer:www-data /var/www/html
5、sudo chmod g+s /var/www/html => 这一步,需要调整为:sudo chmod -Rf g+s /var/www/html
chmod -Rf g+s sorgo/ #SGID,新生成文件或文件夹保持与父目录同一权限组SGID属性对于像laravel框架这种有tinker让开发者在交互式命令行界面调试代码的特别有用。比如你使用tinker新建了一个日志文件,如果没有SGID那这个新日志文件的所有者和所有组会是uu:uu,这时www用户执行下的程序要写入东西到这个新日志的话就会因权限受阻而报错;而父目录有SGID属性的则会是uu:www,同时保证了两个相关的用户都能正常读写。参考:https://segmentfault.com/a/1190000018373387
--
以下为新增,在这种情况下,部分目录可能还会存在写不进的问题。
6、sudo chmod -R 760 /var/www/html/storage => 对指定目录设置可写.