PHP fopen()创建没有修改权限的文件

时间:2013-03-05 14:25:11

标签: php linux file-permissions

从apache调用的PHP脚本执行以下操作:

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

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

放置文件的目录位于我的主目录中,具有777权限。如何让PHP创建由wwwrun拥有的文件,或者使用666权限创建它,或者执行其他操作,以允许它被PHP覆盖。

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

1 个答案:

答案 0 :(得分:0)

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