【发布时间】:2013-08-25 05:50:08
【问题描述】:
我创建了一个生成一些 .gz 文件的 PHP 脚本,当我通过命令行 (cli) 执行 PHP 脚本时,它会生成具有“沙漠”作为用户的 .gz 文件,但是当通过浏览器执行脚本时它使用“nobody”作为用户生成 .gz 文件,这是不应该发生的。当通过浏览器执行脚本时,我希望生成的文件具有“沙漠”用户而不是“无人”用户。
这是我创建的代码:
$file='test';
$newFileGZipCommand = 'cat '.$file.'_new | gzip > '.$file.'.gz';
//$newFileGZipCommand = 'sudo -u desert cat '.$file.'_new | gzip > '.$file.'.gz'; // This does not work
$newFileGZipCommandExecute = shell_exec($newFileGZipCommand);
//chmod($file.'.gz',0777) or die("Unable to change file permission");
//chown($file.'.gz', 'directu') or die("Unable to change file Owner");
我尝试通过 php 中的 chmod() 和 chown() 函数更改文件权限和所有者,但它显示“chown(): operation not allowed”。
高度赞赏任何指向此的指针。
[注意:我无法更改 httpd.conf 或任何其他配置文件]
【问题讨论】:
标签: php apache shell unix webserver