PHP Предупреждение: move_uploaded_file () не может перемещаться

Я медленно изучал PHP и нашел множество информации по этому вопросу и решениям, опубликованным другими разработчиками. Я пытаюсь, чтобы приложение Android загрузило файл на PHP-сервер через HTTP-сообщение. Однако что-то не работает на моей стороне сервера, пытаясь записать файл в PHP.

Вот код PHP:

// Where the file is going to be placed $target_path = "/var/www/media2net/uploads/uploads"; /* Add the original filename to our target path. Result is "uploads/filename.extension" */ $target_path = $target_path . basename($_FILES['uploadedfile']['name']); if (move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { echo "The file ". basename( $_FILES['uploadedfile']['name']) . " has been uploaded"; chmod("uploads/" . basename($_FILES['uploadedfile']['name']), 755); } else { echo "There was an error uploading the file, please try again!"; echo "filename: " . basename( $_FILES['uploadedfile']['name']); echo " target_path: " .$target_path; } 

Я уже знаю, проверяя проводную акулу на стороне клиента, что сообщение http отправлено правильно, также я убедился, что каталог, в котором я пишу файл, имеет правильные разрешения, а режим безопасного доступа к php отключен.

выводится файл apache2 error.log

 [Wed Dec 05 09:25:36 2012] [error] [client 74.14.162.250] PHP Warning: move_uploaded_file(): Unable to move '/tmp/phpVLOnn3' to '/var/www/media2net/uploads/downloaded_file.png' in /var/www/media2net/upload.php on line 9 

Любая помощь с этой проблемой или дальнейшие способы устранения этой проблемы будут оценены.

Изменение разрешений на загрузку для / var / www / media2net / uploads / путем изменения владельца с помощью chown или с помощью chmod,

Примеры

 $ sudo chown apache:apache /var/www/media2net/uploads/ $ sudo chmod 755 /var/www/media2net/uploads/ 

Кроме того, если downloaded_file.png уже существует в этом каталоге и принадлежит другому пользователю, вам также нужно будет изменить право собственности на этот файл.

 $ sudo chown apache:apache /var/www/media2net/uploads/downloaded_file.png 

Таким образом, он может быть успешно перезаписан Apache.

Это решило проблему для меня:

 $ sudo chown -R www-data:www-data /var/www/html/