1
R18 2018-08-27 17:10:56 +08:00
chgrp & chown 只有 superuser 可用 一般是用在 CLI 端的
WEB 端 只要你的 PHP-FPM/Apache/Nginx 是由 WWW 启动的 那它创建的文件也就是 WWW |
2
vus520 2018-08-27 17:29:38 +08:00 1
你应该是用 web 跑的 php-php, php-fpm.conf 里,有一个 user 和 group 组的选项,默认是 www
|
3
liangming1 OP @vus520 php-fmp.conf 里面 user 是 www 的,但是 php 自动生成的文件是 root 的。我希望是它生成的文件是 www 的。
|
4
liangming1 OP @R18 哦哦,好的,我看了一下,php 和 nginx 都是用 root 启动的。
|
5
vus520 2018-08-27 18:43:42 +08:00
> 但是 php 自动生成的文件是 root 的
这说明你的 php-fpm 运行的时候,是用 root 运行的,一般来说你可能是直接用 php-fpm 启动了,而没有指定 fpm 的配置文件,可以试试 service 启动,或者用下面的命令 >/usr/local/opt/php71/sbin/php-fpm --daemonize --fpm-config /usr/local/etc/php/7.1/php-fpm.conf |
6
randyzhao 2018-08-28 09:03:18 +08:00
以防楼主折腾半天都不对,我提供一个新思路
chgrp(test.php, usergroup) chown(test.php, user) |
7
szopen 2018-08-28 09:45:49 +08:00
php-fpm.conf 有一个 ACL 配置项,修改该配置可以让 PHP 创建的 session 数据之类文件可被配置的相关组访问到
|
8
liangming1 OP @randyzhao 这个是可以,但是我希望的是 php 生成的时候就是 www 组的,这样的话 ftp 账号就可以直接编辑这些文件了,而不需要重新修改为 www。
|
9
liangming1 OP @szopen 我找了 conf,好像并没有找到 ACL 这个配置项。
|
10
szopen 2018-08-29 09:02:28 +08:00
|
11
szopen 2018-08-29 09:06:41 +08:00
@liangming1 该选项是默认激活,但是如果系统没有 libacl 库,将无法启用该选项
|
12
zhouyut001 2018-08-29 11:22:31 +08:00 via Android
chmod -R www-data:www-data / var/www
|