CentOS 7 设置httpd (apache) 创建文件的umask

最近在部署网页后端脚本的时候碰到一个关于创建文件的权限问题。 系统版本是CentOS 7,在我的场景中,网页(html/php)由Apache驱动,用户/组为apache/apache。同时后端有一组应用Apps需要以另一个用户(websrv)的身份运行,没有同样使用apache用户是因为涉及到特定软件和环境变量的问题。这些Apps需要在Apache产生的目录中写/改/删文件,同时Apache也需要读取Apps生成的文件。 现在的策略是将websrv用户的group设置为apache,并使websrv和apache用户生成的文件具有group的写权限(g+w),后者是通过设置用户进程的umask实现。 这里 [https://www.liquidweb.com/kb/what-is-umask-and-how-to-use-it-effectively/] [1]介绍了 linux下umask的原理和用法。在我的场景中,就是设置websrv和apache的umask为0002,使创建的目录权限为775,创建的文件权限为664,这样同属一个group的websrv和apache其进…