天蓬老师2017-04-11 09:01:393楼
保证apache即daemon用户对该目录/文件的访问/写入权限
apache 用户不能对它所执行代码的目录拥有写入权限,否则网站等着被挂马吧。上传目录可写,所以一定要是不可执行的(HTTP 服务器不配置执行此目录中的任何脚本,不管它 PHP 还是别的什么)。
apache 不应该使用 daemon 用户(实际上不应该使用 daemon 的用户,因为它的语义不明确,容易造成安全隐患)。apache 所使用的用户应当叫 apache 或者 www 或者 http 或者 www-data。
你把 wwwroot 目录给 nono:apache,并且设置 4750 权限,这样新建的目录 apache 组就可读了。或者你也可以利用 POSIX ACL 的 default 规则来做。
如果你的 PHP 程序需要写日志或者数据文件,请为其准备另外的目录(无法通过 Web 访问的)。
其实为了安全,建议使用 FastCGI 模式运行 PHP 代码,这样 HTTP 服务就不需要与 PHP 共用权限了。