0

从 apache 调用的 PHP 脚本执行以下命令:

$h = fopen(getcwd()."tmp.txt","w");
fprintf($h,"hi");
fclose($h);

生成一个由我的个人用户 ID 拥有的具有 644 权限的文件。但是,再次执行脚本会导致错误,因为 Apache/PHP 以用户 wwwrun 运行,因此没有权限覆盖文件或对其进行 chmod。

放置文件的目录在我的主目录中,具有 777 权限。我怎样才能让 PHP 创建 wwwrun 拥有的文件,或者使用 666 权限创建它,或者做其他事情,以允许它被 PHP 覆盖。

理想情况下,我正在寻找一种解决方案,该解决方案也适用于 PHP 通过使用该exec函数调用的外部程序创建文件的情况;这似乎遇到了同样的问题,因为外部程序作为 wwwrun 运行,但外部程序创建的文件归我的个人用户 ID 所有。

4

1 回答 1

0

事实证明,有问题的目录安装在不支持 linux 文件权限的文件系统上。

于 2013-03-05T15:25:54.220 回答