Мой PHP-скрипт, который загружает файл, не может сделать это в каталогах более высокого уровня, чем он сам.
Например: он будет сохранен в upload/
(относительный путь на том же уровне, что и скрипт), но не в /usr/local/hello/
, хотя права доступа к файлу точно одинаковы.Нет проблем с максимальным размером загрузки, максимальным размером сообщения, временем выполнения и безопасным режимом.У кого-нибудь есть мысли?Я даже не могу вывести сообщение об ошибке - просто $worked
ниже возвращает false, когда это не удается.
<?php
// Removed the rest of the error-checking code!
$contentDir = "/usr/local/hello/"; // <-- doesn't work, chmod 0777, owner: root, group root
//$contentDir = "upload/"; <-- works, chmod 0777 owner: root, group: root
error_reporting(E_ALL);
$filename = $_FILES["filey"]["name"];
$worked = move_uploaded_file(
$_FILES["filey"]["tmp_name"],
$contentDir.$filename);
var_dump($worked);
?>
Редактировать: Мои настройки open_basedir, заданные phpinfo (), являются:
Directive Local Value Master Value
open_basedir no value no value
Спасибо!