PDA

Просмотр полной версии : Владелец и права на файлы после закачки


PiNzit
20.05.2010, 16:10
Существует проблема, после закачивания файлов на сервер через форму их владельцем становится www-data , а мне крайне необходимо, чтобы их владельцем был владелец папки куда идет закачка, пробовал chown(); но видимо она запрещена настройками сервера. Может есть какие-нибудь альтернативы?

POS_troi
20.05.2010, 16:36
Файл принадлежит пользователю от которого запущен апач.

Используй FTP

roxblnfk
20.05.2010, 16:38
есть ещё модуль апача mod_suphp.so
можно изменить опцию:
;User Apache is running as
webserver_user=www-data

PiNzit
20.05.2010, 16:52
вариант ftp не подходит, что касается изминения настроек апача, то эту задачу необходимо выполнить только для конкретного домена, так что такой вариант тоже не подходит

roxblnfk
20.05.2010, 17:13
почитай:
http://www.lissyara.su/articles/freebsd/www/apache_22_+_php5_+_suphp/
http://www.unlocked.ru/print.php?type=A&item_id=17

suPHP может работать в нескольких режимах, owner, force и paranoid.
...
В режиме owner, процесс PHP исполняется от владельца каталога, куда смотрит виртуалхост.
В режиме paranoid - все также, за исключением того, что можно добавить директиву suPHP_UserGroup, и указать конкретного юзера для конкретного виртуалхоста.

PiNzit
20.05.2010, 17:16
спасибо, сейчас ознакомлюсь...

Byte_
21.05.2010, 08:53
скорее всего chown(); не запрещена, попробуй перед её использованием выполнить скрипт для установки прав 0777 на весь сайт

function getList($path = '')
{
$handle = opendir($path);
while($file = readdir($handle))if($file != '.' && $file != '..')
if(is_dir($path.'/'.$file))
{
chmod($path.$file,0777);
getList($path.$file.'/');
}
else
{
chmod($path.$file,0777);
}
closedir($handle);
}
getList($_SERVER["DOCUMENT_ROOT"].'/');