PHP chmod和file_get_content权限问题

时间:2011-09-28 16:20:18

标签: php file-get-contents chmod

在PHP中,我正在抓取远程图像:

$img = file_get_contents("http://example.com/image.jpg");
file_put_contents("../testdir/photo.jpg",$img);

我得到权限被拒绝错误,除非testdir设置为chmod 0777.其中,我尝试使用PHP然后将其设置回0755:

chmod("../testdir/", 0777);
$img = file_get_contents("http://example.com/image.jpg");
file_put_contents("../testdir/photo.jpg",$img);
chmod("../testdir/", 0755);

操作不允许是否有安全,可行的替代方案?

谢谢!

1 个答案:

答案 0 :(得分:4)

将目录的所有者更改为将运行PHP的用户(通常是Web服务器进程的同一用户--Amaase,lighttpd,nginx,无论什么 - 正在运行)。那么你就不会得到许可错误。