Comment configure t'on correctement un site web au niveau des droits ?

Je pense que mon problème à plus a voir avec la configuration linux que le développement web, c'est pourquoi je l'ai mis dans ce forum...

Pour installer un site basé sur Symfony2, je donne ici le nom monsymfony.com installé pour l'utilisateur olivier sur un serveur Debian avec environnement LAMP :
1 - 0 Ajout de l'utilisateur olivier au groupe: adduser olivier www-data
1 – 1 - modification de /etc/hosts :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
127.0.0.1	monsymfony.com
1 – 2 -le vhost dans /etc/apache2/sites-available/monsymfony.com :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<VirtualHost *:80> 
        ServerName monsymfony.com 
        DocumentRoot /var/www/monsymfony.com 
        <Directory /var/www/monsymfony.com/> 
                Options -Indexes 
                AllowOverride all 
                Order allow,deny 
                allow from all 
        </Directory> 
        ErrorLog ${APACHE_LOG_DIR}/error.log 
</VirtualHost>
1 – 3 - Activation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
a2ensite monsymfony.com
1 – 4 - Relancer le serveur : 1 – 5 - Lien vers var/www :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
ln -s /home/olivier/www/monsymfony.com/ /var/www/monsymfony.com
1 – 6 - propriétaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
chown -hR olivier:www-data /home/olivier/www/monsymfony.com
1 – 7 - droits :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
chmod -R 755 /home/olivier/www/monsymfony.com
Puis pour les répertoires dans lesquels on doit pouvoir écrire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
chmod 775 app/cache/ app/logs/ app/config/ files/ templates/ vendor/ web/
chmod -R 775 app/cache/ app/logs/ vendor/ web/ 
chmod 775 composer.json composer.lock app/config/bundles.ini app/config/parameters.yml app/config/platform_options.yml
Avec cette configuration j'arrive à installer le site correctement. Mais le problème c'est lorsque le site met à jour son cache (génère des nouveaux fichiers /dossiers) les nouveaux fichiers/dossiers n'ont plus les droits corrects : user = www-data et groupe = www-data au lieu de user = olivier et groupe = www-data.
De même si j'ajoute via la console un plugin il se retrouve avec les droits root.
Ce qui implique au final un "plantage"

Pouvez-vous me donnez une bonne procédure de paramétrage de droits pour un site qui est amené à générer / modifier dynamiquement des fichiers/ répertoires ?

Merci d'avance