Эта тема на forum.dklab.ru


Kas-Alex: Загрузка файла
Добрый вечер!
Подскажите как решить данную проблему, нет прав на копирование файла.

Пример:

<?php
if (isset ($_FILES['name_ref']))
{
if (chdir('/home/…/public_html/filetest/'))
{
umask(0);
copy($_FILES['name_ref']['tmp_name'], '/home/…/public_html/filetest/var10.zip');
}
}
?>

У php файла права 0777, у директории 0777 (umask 022);
Chown() - не поможет.
file_uploads = on.
$_FILES – существует.
Ошибка: Permission denied.
Я так понимаю, владельцем tmp файл является Apache (это 100%), отсюда и проблема.
Как это обойти?
Эксперимент проходит на том же хостере, что и этот форум – к сведению.
Kupuyc:
move_uploaded_file?
Kas-Alex:
move_uploaded_file?
Не все так проста.
Kas-Alex:
move_uploaded_file?
Между сору и move_uploaded_file, нет в данном случае разницы.
Нет прав!
Юрий Насретдинов:
Kas-Alex
Могу посоветовать использовать http://forum.dklab.ru/viewtopic.php?t=24388 , чтобы обойти эту проблему. Я так на Мастерхосте делал :).
Kas-Alex:
Юpий Насрeтдинов
Спасибо!
Сейчас смотрю, но конечно хотелось решить данную проблему через HTTP.
Юрий Насретдинов:
решить данную проблему через HTTP.
Вы там что, все сговорились, чтоли :)? HTTP не поддерживает работы с файлами. Вернее так, HTTP без WebDav (или как он там пишется) не поддерживает. Скорее всего, через файловую систему сервера решить эту проблему по-человечески и универсально не получится. Для использования моей функции d_copy надо лишь подключить один файл и работать также, как и раньше :).
Kas-Alex:
Всем спасибо, сам видимо, где-то ступил.
Попробовал еще раз изменить права через файл менеджер, получилось.
Правда в первый раз когда делал что то не прокатило.


Вопрос решен, тему можно закрыть.
Юрий Насретдинов:
Kas-Alex
Посмотрю я на Вас, как Вы потом будете с файлами, которые зааплоадены таким способом, работать через FTP, чтобы, скажем, удалять ненужное, или копировать в другое место...
Kas-Alex:
Kas-Alex
Посмотрю я на Вас, как Вы потом будете с файлами, которые зааплоадены таким способом, работать через FTP, чтобы, скажем, удалять ненужное, или копировать в другое место...
Только что проверил
unlink() и copy() - все нормально.

Эта тема на forum.dklab.ru