Я использую PHP для перемещения изображения в определенный каталог. Он терпит неудачу, если у меня есть/tmp/с разрешениями 755, но это не сработает, если у меня есть это с 777. Так как 777 не является безопасным, есть ли какой-либо другой способ сделать это?
Мой PHP-код:
$dir = '/var/www/spectrom.benrosen.org/uploadedimages/';
$file = basename($_FILES['uploadimage']['name']);
$uploadfile = $dir . randomize() . $file;
if (move_uploaded_file($_FILES['uploadimage']['tmp_name'], $uploadfile)) {
exit('{"result": "successful"}');
} else {
exit('{"result": "could not upload image."}');
}
Гарр прав в папке /tmp. В любом случае, если вас беспокоит безопасность папок, проверьте этот файл http://shapeshed.com/securing_upload_folders_in_php_on_unix_servers/, в котором объясняется, как преобразовать разрешение на загрузку в папку 755.
Я бы не стал беспокоиться о папке /tmp. Любой пользователь должен иметь возможность писать на него. Вы не должны оставлять ничего чувствительного в папке tmp.
Это также приведет к сбою в зависимости от настроек вашей папки "Добавить изображения". Сделать владельца этой папки процессом PHP. Это зависит от системы. Если работает apache, он может управляться через.htaccess, но определенно httpd.conf