Рекурсивное изменение прав доступа на PHP

Дата: Июль 30, 2009

(2) комментариев

Очень часто приходится работать с хостингами, на которых отсутствуют элементарные средства перебивки прав доступа. Глядя на эту несправедливость я решил написать простой скрипт по перебивке прав, так как на 99% хостингов права вебсервера отличны от прав ftp пользователя, в результате при создании файлов вебсервером их потом невозможно удалить или изменить по фтп. Ну думаю вы и сами встречались с такой проблеммой.

вот пример

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?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['f']);
       }
       else { //если текущая позиция это папка то...  
         chmod($path . "/" . $file, $perm['d']);
         chmod_R($path . "/" . $file, $perm); // рекурсивно проверяем папочку
       }
     }
   }
   closedir($handle);
 }
 
 $path = $_SERVER["QUERY_STRING"];

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

$perm=array();
$perm['f']=0644; // эти права будут ус
a

    Автор: Sergey

    , ,




    2 комментариев на "Рекурсивное изменение прав доступа на PHP"

    Волька сказал:
    31.07.2009

    А нельзя разве выполнить exec(‘chmod -R 644 path/dir’); ?

    magistr_bender сказал:
    31.07.2009

    конечно можно! только если н алокальном кампе или на своём серваке, так как на 50% хостингов которые я искользовал exec, system, exec_shell и т.п. не работали.
    хотя смылл данного отключения непонятен

    Продолжение дискуссии на форуме: link


    Вы можете продолжить обсуждение этой статьи на форуме


    Имя : 
    Почта : 
    Сайт : 
    Комментарий : 

    Проверка комментариев включена. Прежде чем Ваши комментарии будут опубликованы пройдет какое-то время.

    Создание сайта - Echo-group Раскрутка сайтов