为什么文件上传php脚本无法在新服务器上运行?

时间:2014-11-25 11:39:43

标签: php forms upload server

我将我在免费服务器上运行的php srcipt移动到我自己的服务器(覆盆子pi上的apache 2),它不再工作了。您将在下面找到该脚本 - 它返回“抱歉,上传文件时出错。”。

我不知道是什么原因引起的。以下是我尝试/观察过的大部分细节:

  • 我的raspberry pi服务器上的文件夹受密码保护。我删除了密码,但没有结果
  • 我的服务器在路由器后面,转发工作正常。我可以访问我从内部和没有本地网络上传的任何内容。
  • php.ini允许上传文件

file_upload.php:

<?php
$target_dir = "upload/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 2000000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "JPG, JPEG, PNG or GIF.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "Error.";
  }
// if everything is ok, try to upload file
else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}
?> 

0 个答案:

没有答案