【问题标题】:PHP Fileupload to AWS EC2PHP 文件上传到 AWS EC2
【发布时间】:2016-03-11 20:46:23
【问题描述】:

我目前正在将基于 PHP 的文件上传到 AWS EC2 实例。基本上我只想将 zip 文件上传到名为 /uploads/ 的子​​目录。让我向您展示我到目前为止的代码:

<form enctype="multipart/form-data" action="index.php" method="POST">
   <input id="file-0a" class="file" name="zipfile" type="file" data-show-preview="false">
</form>

所以任何上传的文件都应该在 $_FILES['zipfile']

说到 PHP,我的代码如下所示:

<?php 

if(isset($_FILES[zipfile])){
    error_reporting(E_ALL);

    $uploaddir = '/uploads/';
    $uploadfile = $uploaddir . basename($_FILES['zipfile']['name']);

    echo '<pre>';
    if (move_uploaded_file($_FILES['zipfile']['tmp_name'], $uploadfile)) {
        echo "Success\n";
    } else {
        echo "Error!\n";
}

echo 'Debugging:';
print_r($_FILES);

print "</pre>";
}

?>

Print_r 显示所有必要的信息,错误级别为 0,我得到一个像 /tmp/phpy3lQBV 这样的 tmp_name。但我仍然从其他部分得到错误。所以我假设 move_uploaded_files 返回 false。

在 XAMPP 上本地运行脚本时,一切正常。我已在 EC2 实例上将 chmod 设置为 777。 EC2 实例正在运行 Apache 2.4.7 和 PHP 5.5.9

我希望有人可以帮助我。

干杯, 亨德里克

【问题讨论】:

    标签: php amazon-web-services file-upload amazon-ec2 chmod


    【解决方案1】:

    我通过将www-data 指定为/var/www/html 目录的用户解决了这个问题。之前它被设置为'ubuntu',这是AWS默认分配的。

    基本上sudo chown -R www-data var/www/html 为我工作。

    【讨论】:

      猜你喜欢
      • 2016-11-09
      • 1970-01-01
      • 2015-11-19
      • 1970-01-01
      • 2020-09-17
      • 1970-01-01
      • 1970-01-01
      • 2016-02-12
      • 2013-04-14
      相关资源
      最近更新 更多