我的某个网站有一个问题。当我上传图像时,它会创建一个文件夹,然后在文件夹中上传图像。创建文件夹对我来说很好,但无法上传图像。 move_uploaded_files返回false而没有任何错误消息。
当我手动检查时,所有文件夹都具有正确的777权限。当我的代码创建文件夹时,所有者是“apache”。
但是,当我通过ftp手动创建文件夹时,所有者是我的用户名“aayushi”,对于此文件夹,上传图片工作正常。
我知道如何解决这个问题?或者如何授权“apache”所有者上传图片...
提前致谢。
答案 0 :(得分:0)
创建文件夹后,所有者将是创建该文件夹的用户 - 在您的ftp客户端中,这是您登录的用户;在PHP中,这将是PHP脚本运行的用户(在本例中为apache用户)。最有可能的是,您的问题是Apache在创建这些文件夹时的umask设置。设置umask的内容在the PHP manual。
中如果您能在某处找到Sklar和Trachtenberg的“PHP Cookbook”的副本,请查看Recipe 19.11(“制作新目录”)以获得更多有关其工作原理的讨论 - 可能还有其他教程,但是这个是我发现非常清楚的一个。