Je sais pas si ça arrive a d'autres, mais perso j'ai toujours eu du mal a mettre mes droits correctement sur mon dossier accéssible par apache ... soit je peut tout faire et apache rien, soit l'inverse, soit ça à l'air de fonctionner un moment puis apache il a besoin de faire ça et il peut pas ... bref j'avais un gros dilème ...

En tout cas grâce à un collègue de bureau (merci Olav ;)) j'ai pu pondre un petit script qui me met tout d'équère !!!

#!/bin/bash
 
#on se place au bon endroit chez moi le home mais si vous n'avez rien changé mettez ici cd /var
cd /home/john
 
#changement du propriétaire pour tout le répertoire www (il faut adapter utilisateur et groupe)
echo "Changement de proprio:"
chown -R john:john ./www
 
#changement des droits sur les répertoires
echo "Changement des droits sur les dossiers"
find ./www -type d -print0 | xargs -0 chmod 0755 2>/dev/null
 
#changement des droits sur les fichiers
echo "Changement des droits sur les fichiers"
find ./www -type f -print0 | xargs -0 chmod 0644 2>/dev/null
 
#cas particuliers ou apache a besoin d'être tout puissant
echo "Changements particuliers"
for pattern in *cache* *_c* *share*
do
        echo "--> (d)" $pattern
        find ./www -type d -name $pattern -print0 | xargs -0 chmod -R 0777 2>/dev/null
done;

Voilà et une fois que j'ai vraiment compris ce qu'il se passe, je me suis senti bête de pas avoir réfléchit avant ... quoiqu'il en soit si vous voulez faire d'autre trous de sécurité comme *cache* ou autre il faut rajouter des patterns à la liste ! (j'entends par trou de sécu, un endroit ou apache est tout puissant ...)

Le fichier je le sauvegarde dans /usr/local/bin/rwww et je fais :

sudo rwww

Au passage je mets ici un lien vers un recueil de commande qui aide pas mal ;)