apache PHP - chmod()函数:不允许的操作

ylamdve6  于 2022-11-16  发布在  Apache
关注(0)|答案(1)|浏览(121)

我有root拥有的文件,我想用php使用chmod()更改它的权限。但是它给了我一个错误chmod(): Operation not permitted

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

PHP Error Response

如何在php中使用chmod(),但文件的所有权是root?我可以在不改变文件所有权的情况下实现这个吗?
应用环境:

  • PHP 7.1.33语言
  • 代码点火器3框架
  • Apache2.4.6
  • CentOS Linux版本7.8.2003

任何回答都是感激不尽的,谢谢之前。

编辑:

希望这能有所帮助。
我运行了ps aux | grep httpd,它在列表中只显示root和apache。

wgx48brx

wgx48brx1#

由于文件的所有者是root而不是www-data,apache将没有权限更改文件的读写权限,您需要将文件夹设置为由www-data拥有和可写。
centOS中的命令如下

sudo chown -R httpd:httpd ./filepath

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

相关问题