Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Создание директории с правами 777
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Создание директории с правами 777

Страниц (1): [1]
 

1. dropoff - 19 Декабря, 2014 - 20:56:49 - перейти к сообщению
Всем привет.

Тема избитая, но проблему решить не могу.

Есть скрипт, который устанавливается на разные хосты. В процессе работы необходимо создавать директории с правами чтение\запись. В некоторых случая нормально, а в некоторых директории создаются от юзера Apache www-data. Хоть права и 777, но запись не возможна в эти папки.

Что пробовал:

PHP:
скопировать код в буфер обмена
  1. mkdir($dir, 0777, true);
  2. chmod($dir, 0777);
  3.  
  4. mkdir($dir);
  5. chmod($dir, 0777);
  6.  
  7. mkdir($dir);
  8.  
  9. $old = umask(0);
  10. mkdir($dir);
  11. umask($old);

и т.д...

Результата нет. Как быть?
2. DeepVarvar - 19 Декабря, 2014 - 21:04:04 - перейти к сообщению
Нутк, смотри, если ты создаешь вложенные директории, то mkdir имея третий параметр это сделает, а вот chmod только одну какую-то зачмодит.
И вообще проверяй, успешна ли операция, chmod возвращает статус успеха.
3. dropoff - 19 Декабря, 2014 - 23:06:21 - перейти к сообщению
Я создаю одну директорию, не вложенные.

Ошибка выдает то, что fopen() не срабатывает. Т.е. директория создана, но создать файл в ней не получается из-за прав.

У папки права 777. Но она создана от юзера апача www-data и прав писать в нее нет и удалить не возможно. только из под рута.

Я конечно с утра, на свежую голову попробую по новой все проверить.

 

Powered by ExBB FM 1.0 RC1