【发布时间】: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