首页  >  问答  >  正文

PHP - chmod():权限被拒绝

我有 root 拥有的文件,我想使用 chmod() 更改它的权限。但它给了我一个错误 chmod(): 操作不允许 代替。

if (file_exists($filepath)) {
    chmod($filepath, 0755);
}

PHP 错误响应

如何在 php 中使用 chmod() 但文件所有权是 root ? 我可以在不更改文件所有权的情况下实现此目的吗?

应用环境:

任何答案都值得赞赏,谢谢。

编辑:

我已经运行了 ps aux | grep httpd ,它仅在列表中显示 root 和 apache。

P粉475126941P粉475126941231 天前373

全部回复(1)我来回复

  • P粉338969567

    P粉3389695672024-03-26 21:53:40

    由于这些文件属于 root 而不是 www-data,因此 apache 将无权更改该文件的读写权限。您需要将该文件夹设置为 www-data 所有且可写。

    centOS 中执行此操作的命令是

    sudo chown -R apache:apache ./filepath

    您需要 sudo 作为 root 所有者,并将文件路径替换为您的文件夹名称

    回复
    0
  • 取消回复