Следующий код поможет Вам найти директории и файлы, которым выставлены ненадлежащие права доступа
<?php error_reporting(E_ERROR | E_PARSE); $dir = '/usr/home/volhovecm/data/www/volhovecm.ru/';// проверяемая директория сайта class check_perms { function check_perms($curpath){ if($curpath){ if($dir = @dir($curpath)){ while ($file = $dir-> read()){ if($file != "." && $file != ".."){ $perms = substr(decoct(fileperms($curpath.$file)), 2); if(is_dir($curpath.$file)){// если есть поддиректории то продолжаем рекурсию $this-> check_perms($curpath.$file."/"); if($perms>775 || $perms<775){ if(!@chmod($curpath.$file, 0775)){ $this->perms_d775 .= $curpath.$file."\n"; } } }else{// файл $ext = array_reverse(explode('.', $file)); if($ext['0']=='php' && ($perms>775 || $perms<775)){ if(!@chmod($curpath.$file, 0775)){ $this->perms_f775 .= $curpath.$file."\n"; } }else if($ext['0']!='php' && ($perms>664 || $perms<664)){ if(!@chmod($curpath.$file, 0664)){ $this->perms_f664 .= $curpath.$file."\n"; } } } // пытаемся сменить группу /*if($GLOBALS['group']){ $group = filegroup ($curpath.$file); if($group!=$GLOBALS['group'] && !@chgrp($curpath.$file, $GLOBALS['group'])){ $this->group .= $curpath.$file."\n"; } } // пытаемся сменить владельца if($GLOBALS['owner']){ $owner = fileowner ($curpath.$file); if($owner!=$GLOBALS['owner'] && !@chown($curpath.$file, $GLOBALS['owner'])){ $this->owner .= $curpath.$file."\n"; } }*/ } } $dir->close(); } } } } $files_map = new check_perms($dir); if($files_map->perms_d775){ echo 'Следующим директориям нужно выставить права доступа 0775:<pre>'.$files_map->perms_d775.'</pre>'; } if($files_map->perms_f775){ echo 'Следующим файлам нужно выставить права доступа 0775:<pre>'.$files_map->perms_f775.'</pre>'; } if($files_map->perms_f664){ echo 'Следующим файлам нужно выставить права доступа 0664:<pre>'.$files_map->perms_f664.'</pre>'; } //if($files_map->group){ echo 'Следующим файлам нужно выставить права доступа 0664:<pre>'.$files_map->group.'</pre>'; } //if($files_map->owner){ echo 'Следующим файлам нужно выставить права доступа 0664:<pre>'.$files_map->owner.'</pre>'; } ?>
| Оцени публикацию: |
|
Оценили человек: 2 |
|
|
Похожие статьи:
|