当我将文件上传到我的apache服务器时出现错误代码7

时间:2018-05-07 03:26:45

标签: php apache

Bitmap.Config.Argb8888

这是我的PHP代码,我只是想将一个简单的小文件上传到我的apache服务器。 当我在localhost中运行它时它工作,但当我尝试使用apache运行时出现错误代码7。

header("Content-Type:text/html; charset=utf-8");

if ($_FILES['test']['error'] === UPLOAD_ERR_OK){
  echo 'filename: ' . $_FILES['test']['name'] . '<br/>';

  if (file_exists('upload/' . $_FILES['test']['name']))
  {
    echo 'file exist<br/>';
  } 
  else 
  {
    $file = $_FILES['test']['tmp_name'];
    $dest = 'upload/' . $_FILES['test']['name'];

    move_uploaded_file($file, $dest);
    echo "seccess";
  }
} 
else 
{
  echo 'error code:' . $_FILES['test']['error'] . '<br/>';
}

已将 www-data 设置为 www 的所有者,磁盘空间足以保存该文件。

我可以做些什么来解决错误代码7问题?

2 个答案:

答案 0 :(得分:0)

请检查目录是否具有writeable权限。错误表明您没有权限保存或写入该目录。 另外,检查该目录的磁盘空间。

有关错误代码的详细信息,请参阅此链接: http://php.net/manual/en/features.file-upload.errors.php

答案 1 :(得分:0)

这也可能是你的临时文件空间不足(刚好发生在我身上) - 这是文件上传时的位置。

您可以在php.ini文件中找到以下值的tmp文件目的地:

upload_tmp_dir

通常这会在文件上传完成后自行清理,但在我的情况下,我的一位管理员在那里复制了一些视频以保证安全,同时留出更多空间,所以我可以上传小文件而不是大文件的症状一开始真是令人费解。

如果您的上传文件大于临时空间,也可能会发生这种情况 - 虽然我还没有对此进行过测试。