Automatiser la modif de mes chmods -> ?
Bonjour,
J'ai découvert récemment un petit script (voir ci-dessous), en vue d'automatiser le repassage à une valeur "sécuritaire" de tous les chmod de mes fichiers et dossiers, après leur modif, sur mon serveur distant (OVH)...
Ce script m'a l'air plutôt "fonctionnel", aux dires de l'un des visiteurs sauf que... chez moi, rien ne se passe, comme si la fonction "chmod_R" était ignorée !
:fleche: Auriez-vous quelque suggestion, svp, pour m'aider à "résoudre" cette affaire ?
En vous remerciant par avance !
Code concerné:
Code:
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 27 28 29 30 31 32 33 34 35
| <?php
/* Fonction découverte ici: http://www.webassist.com/forums/showthread.php?t=24093
et ici: http://www.diigo.com/annotated/e80e29445dda7f5d3449654f1fcbb53a */
function chmod_R($path, $filemode, $dirmode) {
if (is_dir($path) ) {
if (!chmod($path, $dirmode)) {
$dirmode_str=decoct($dirmode);
print "Failed applying filemode '$dirmode_str' on directory '$path'\n";
print " `-> the directory '$path' will be skipped from recursive chmod\n";
return;
}
$dh = opendir($path);
while (($file = readdir($dh)) !== false) {
if($file != '.' && $file != '..') { // skip self and parent pointing directories
$fullpath = $path.'/'.$file;
chmod_R($fullpath, $filemode,$dirmode);
}
}
closedir($dh);
} else {
if (is_link($path)) {
print "link '$path' is skipped\n";
return;
}
if (!chmod($path, $filemode)) {
$filemode_str=decoct($filemode);
print "Failed applying filemode '$filemode_str' on file '$path'\n";
return;
}
}
}
chmod_R( 'abc', 0404, 0505);
?> |