gpt4 book ai didi

php - chown : Operation not permitted

转载 作者:IT王子 更新时间:2023-10-29 01:02:20 25 4
gpt4 key购买 nike

我有问题,我需要通过 php 脚本为系统中的不同用户设置文件所有者权限

所以我通过以下命令执行此操作,其中 1002 是系统的用户 ID。

file_put_contents($filename, $content);
system("chown 1002 " . $filename . "");

但是我只在生产服务器上遇到这个错误(测试服务器工作正常)

chown: changing ownership of `/var/spool/asterisk/06h12m7.call':
Operation not permitted

最佳答案

由于您将此问题标记为 Linux,我假设您使用的是 Apache 服务器。在生产服务器中,拥有所有 php 进程的 Apache 进程通常由 apache 用户 或不是 root 用户 的其他用户执行.

牢记这一点,您尝试做的是使用 chown 函数(将作为 apache 用户执行)更改不属于您的文件的所有者。 (是的,您只能更改您拥有的文件的所有者)。

你看,引用 php 手册,chown函数尝试更改所有者:

Attempts to change the owner of the file filename to user user. Only the superuser may change the owner of a file.

在生产服务器中,通常你在用户目录模式下运行,这意味着你被绑定(bind)到你的主目录中的文件,比如 /home/yourusername/public_html 等, /var 目录中的文件是您无法访问的(它们通常由 root 拥有),这就是您不能 chown 的原因。

希望对您有所帮助。干杯!

关于php - chown : Operation not permitted,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13225453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com