首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  PHP

求教怎么让 PHP 创建的文件是 www 组。

  •  
  •   liangming1 · 174 天前 · 1225 次点击
    这是一个创建于 174 天前的主题,其中的信息可能已经有所发展或是发生改变。
    12 回复  |  直到 2018-08-29 11:22:31 +08:00
        1
    R18   174 天前
    chgrp & chown 只有 superuser 可用 一般是用在 CLI 端的
    WEB 端 只要你的 PHP-FPM/Apache/Nginx 是由 WWW 启动的 那它创建的文件也就是 WWW
        2
    vus520   174 天前   ♥ 1
    你应该是用 web 跑的 php-php, php-fpm.conf 里,有一个 user 和 group 组的选项,默认是 www
        3
    liangming1   174 天前
    @vus520 php-fmp.conf 里面 user 是 www 的,但是 php 自动生成的文件是 root 的。我希望是它生成的文件是 www 的。
        4
    liangming1   174 天前
    @R18 哦哦,好的,我看了一下,php 和 nginx 都是用 root 启动的。
        5
    vus520   174 天前
    > 但是 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   173 天前
    以防楼主折腾半天都不对,我提供一个新思路

    chgrp(test.php, usergroup)
    chown(test.php, user)
        7
    szopen   173 天前
    php-fpm.conf 有一个 ACL 配置项,修改该配置可以让 PHP 创建的 session 数据之类文件可被配置的相关组访问到
        8
    liangming1   173 天前
    @randyzhao 这个是可以,但是我希望的是 php 生成的时候就是 www 组的,这样的话 ftp 账号就可以直接编辑这些文件了,而不需要重新修改为 www。
        9
    liangming1   173 天前
    @szopen 我找了 conf,好像并没有找到 ACL 这个配置项。
        10
    szopen   172 天前
        11
    szopen   172 天前
    @liangming1 该选项是默认激活,但是如果系统没有 libacl 库,将无法启用该选项
        12
    zhouyut001   172 天前 via Android
    chmod -R www-data:www-data / var/www
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   983 人在线   最高记录 4346   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 18:07 · PVG 02:07 · LAX 10:07 · JFK 13:07
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1