PHP文件上传问题-Can';t上载到所需文件夹


PHP File Upload Issues - Can't Upload to Desired Folder

我得到一个$tmp_name为"/tmp/phpv1K2Eh",但我无法将临时文件移动到"uploads/"文件夹。

这在我以前的服务器上运行良好,但在我的新AWS服务器上,我想我需要权限才能写入文件夹?

<?php
$name =         $_FILES['file']['name'];
$tmp_name =     $_FILES['file']['tmp_name'];
if(isset($name) && !empty($name)){
    $location = 'uploads/' .$name;
    if(move_uploaded_file($tmp_name, $location)){
        echo 'File Uploaded!';
    } else {
        echo 'Error in upload';
    }
}
?>
<form action="test.php" method="POST" enctype="multipart/form-data">
    <input type="file" name="file"><br><br>
    <input type="submit" name="Submit">
</form>

编辑:需要向文件夹授予上载权限。但是,如何对/var/www中的所有文件夹和子文件夹执行此操作?

$ sudo chown apache:apache /var/www/html/uploads/

PHP警告:move_uploaded_file()无法移动

我的问题是我没有对文件夹的写入权限,我只有READ&执行。这将为"上传"文件夹及其所有子文件夹创建写入权限:

sudo chmod -R ugo+rw /var/www/html/uploads

我回答的主要来源:https://www.linux.com/learn/tutorials/760276-how-to-manage-file-and-folder-permissions-in-linux

了解Linux文件权限:https://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions