права доступа в юниксе

Dovg

Продвинутый новичок
triumvirat
Я так понял, что у тебя `` все же разрешены

План действий такой:
1. создаешь через фтп файл
2. смотришь у него владельца/группу (как уже подсказали через фтп, либо ls)
3. в самом-самом корне сервера создаешь и запускаешь php файл примерно такого содержания:
<?php
echo `chown -vR user:group ./`;
echo PHP_EOL;
echo `chmod -vR 777 ./`;
?>
Где user:group из 2.
4. радуешься результату
5. если результат не радует, показываешь вывод из 3.
 

Духовность™

Продвинутый новичок
Dovg
Спасибо, попробую. Скажите, а нельзя ли мне просто применить php-функцию chown(user:group) непосредственно при создании файлов и директорий?
 

Dovg

Продвинутый новичок
а http://ru.php.net/chown и http://ru.php.net/chmod на созданные скрипом файлы тоже не помогают?
 

pilot911

Новичок
Автор оригинала: triumvirat


в смысле на мастерхосте? конкретно у вас или...?
такие вопросы надо задавать техподдержке

вот их скрипт с http://masterhost.ru/support/faq/technical/access-to-php-made/


PHP:
<?php
 function chmod_R($path, $perm) {
 
   $handle = opendir($path);
   while ( false !== ($file = readdir($handle)) ) {
     if ( ($file !== ".") && ($file !== "..") ) {
       if ( is_file($path."/".$file) ) {
         chmod($path . "/" . $file, $perm);
       }
       else {
         chmod($path . "/" . $file, $perm);
         chmod_R($path . "/" . $file, $perm);
       }
     }
   }
   closedir($handle);
 }
 
 $path = $_SERVER["QUERY_STRING"];

 if ( $path{0} != "/" ) {
    $path = $_SERVER["DOCUMENT_ROOT"] . "/" . $path;
 }

 chmod_R($path, 0777);
 echo $path;
?>



Разместите этот файл на площадке, в директории, доступной веб-серверу, например, как domain.tld/www/chmod.php
где domain.tld/www — корневая директория (DocumentRoot) вашего сайта на сервере.

Вызывать скрипт нужно так: http://domain.tld/chmod.php?путь_к_нужной_директории
или так: http://domain.tld/chmod.php?
/home/uXXXXX/domain.tld/www/путь_к_нужной_директории

В первом случае указывается путь относительно DocumentRoot для вашего сайта (domain.tld/www/ в данном примере). Во втором случае (uXXXXX — идентификатор вашей площадки) — абсолютный путь от корневой директории сервера.

При запуске скрипта без параметров будут изменены права для всех файлов и директорий, располагающихся в DocumentRoot.
 

Духовность™

Продвинутый новичок
pilot911
жесть =)


Всем спасибо за советы!! Решение на самом деле нашлось раньше и состояло в том, что бы при создании директории назначать ей права не стандартно через mkdir, при создании, а с помощью chmod. Уж не знаю, с чем связно такое поведение..
 

Духовность™

Продвинутый новичок
идиотский хостинг...

pilot911
а ты там пробовал включать error-log?

у меня там не работает
PHP:
ini_set('error_log', $_SERVER['DOCUMENT_ROOT'].'/php_error_log.txt');
 

Gas

может по одной?
и log_errors=on
логирование ошибок то точно должно работать (если всё правильно делать).
 

pilot911

Новичок
Автор оригинала: triumvirat
идиотский хостинг...

pilot911
а ты там пробовал включать error-log?

у меня там не работает
PHP:
ini_set('error_log', $_SERVER['DOCUMENT_ROOT'].'/php_error_log.txt');
не знаю, насчет ини_сет, но мб эта функция запрещена - придется свой пхп собрать, дело 2х минут

посмотри записи поддержки на сайте


ПС. хостинг действительно не оч
 
Сверху