簡體   English   中英

move_uploaded_file 在 ubuntu 10.04 中不起作用

[英]move_uploaded_file not working in ubuntu 10.04

嘿,伙計們,這里有點問題,move_uploaded_file 實際上根本沒有工作,它在我的終端中顯示了一些警告。

我的代碼:


$name =  $_FILES['file']['name'];
$size =  $_FILES['file']['size'];
$type =  $_FILES['file']['type'];
$error =  $_FILES['file']['error'];
$temp =  $_FILES['file']['tmp_name'];
$destination = "uploads/";

if($size > 10000000) {
    exit("file size is too big, Max allowed size is 10Mbs");
}

if($type == "application/x-ms-dos-executable") {
    exit("not allowed file formatt.");
}

move_uploaded_file($temp, $destination.$name);

終端:

[Sat May 14 15:14:01 2011] [error] [client ::1] PHP Warning:  move_uploaded_file(uploads/gears_16.png): failed to open stream: Permission denied in /var/www/alex/fileupload/upload.php on line 18, referer: http://localhost/alex/fileupload/
[Sat May 14 15:14:01 2011] [error] [client ::1] PHP Warning:  move_uploaded_file(): Unable to move '/tmp/phpMxKzds' to 'uploads/gears_16.png' in /var/www/alex/fileupload/upload.php on line 18, referer: http://localhost/alex/fileupload/


並且文件不會移動,源,目標和文件權限是777。這令人沮喪:(

sudo chown alex -R /var/www

sudo chgrp www-data -R /var/www

sudo chmod 0751 -R /var/www

//這里提到http://ubuntuforums.org/showthread.php?t=560592

  • Ubuntu中,您必須將目標目錄權限授予守護程序用戶。
  • 就我而言,我的工作區位於/opt/lampp/htdocs/students/中,並且有一個類似/opt/lampp/htdocs/students/uploadedFilesDestination的文件夾。
  • 我想把我上傳的文件放到uploadedFilesDestination文件夾中。 這里的事情是ubuntu的內核/線程必須具有目標目錄的權限。
  • 您可能必須使用以下命令來執行此操作。
    打開終端並按照命令

sudo chown 守護進程 /opt/lampp/htdocs/student/uploadedFilesDestination

守護進程很重要。 daemon 是 kernel 權限的 *用戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM