Php 文件上载不工作

Php 文件上载不工作,php,file-upload,Php,File Upload,我在media temple服务器上安装了wordpress,发现它无法上传文件。尝试之后,几个解决方案决定用一个简单的脚本()复制这个问题 文件名: 看起来move_upload_file()返回false时没有警告或错误,在php文档中查找并发现此错误 如果文件名不是有效的上载文件,则不会执行任何操作,并且 move\u上传的\u file()将返回FALSE 我已经检查过了,文件上传没有报告任何错误,并且在尝试移动之前临时文件已经存在。已经在文件夹中设置了777权限,但仍然没有任何运

我在media temple服务器上安装了wordpress,发现它无法上传文件。尝试之后,几个解决方案决定用一个简单的脚本()复制这个问题


文件名:

看起来move_upload_file()返回false时没有警告或错误,在php文档中查找并发现此错误

如果文件名不是有效的上载文件,则不会执行任何操作,并且 move\u上传的\u file()将返回FALSE

我已经检查过了,文件上传没有报告任何错误,并且在尝试移动之前临时文件已经存在。已经在文件夹中设置了777权限,但仍然没有任何运气,是否知道是什么导致了此行为以及如何修复它


谢谢。

尝试使用绝对路径作为
移动上传文件()的目标。
这会给您带来什么:

$_FILES[...]['error']
如果它没有给你零,你可以在这里检查哪里出了问题:

如果是,请确保您的文件夹所在的文件夹可以被PHP访问。您可以尝试运行以下命令:

sudo -s -u [php_user]
cd [destination_directory]

检查您是否可以访问目录=)

如果目标不可写,则移动上传的文件也将失败。根文件夹是否可写(我这样问是因为移动它时没有将uploads文件夹固定到文件名中)。我知道您提到您将权限设置为
777
,但这是针对上载目录或应用程序所在的整个文件夹的权限。

您正在检查目标是否存在于某个目录中,然后将源复制到另一个目录:

if (file_exists("uploads/" . $_FILES["file"]["name"]))
...
$uploaded=move_uploaded_file($_FILES["file"]["tmp_name"], $_FILES["file"]["name"]);

事实证明,我禁用了fastCGI,我刚刚启用了,一切正常。谢谢您的帮助。

检查您是否可以访问d目录,无需在临时文件夹中删除它,因为它将自动移动,目标目标仍在d文件中。因此,为什么不尝试将其移动到另一个目标

我不知道这是否有帮助,但我在几个小时前发现了这个问题,问题是我的文件夹的写入权限(我不拥有我正在使用的服务器)以及与我一起工作的人的响应是

“您的”文件夹必须由用户apache作为(www数据)运行时可写。这可以通过使文件夹世界可写或将“您要将文件放在哪里”文件夹设置为组www数据所有并使其组可写来实现


设置
错误报告(E\u ALL)在您的代码和查看错误/警告之前,我的所有上载测试中给定的$_文件[…]['error']均为0。我与apache用户一起登录,能够将文件复制到该文件夹中。
if (file_exists("uploads/" . $_FILES["file"]["name"]))
...
$uploaded=move_uploaded_file($_FILES["file"]["tmp_name"], $_FILES["file"]["name"]);