web-dev-qa-db-fra.com

Problème relatif aux autorisations de cache Symfony2 ubuntu 12.10

j'ai installé lampp 1.8.1 dans /opt/lampp.Tout fonctionne bien.

j'ai ajouté mon utilisateur actuel en tant que propriétaire au dossier htdocs afin que je puisse écrire dans le dossier htdocs.

alors j'ai créé mon projet symfony2. tout a bien fonctionné et j'ai pu exécuter correctement la page de configuration.

mais quand j'ai effacé le cache en utilisant la commande

Sudo php app/console cache:clear --env=prod
Sudo php app/console cache:clear --env=dev

le cache est effacé, mais il y a un problème d'autorisations. quand j'essaie d'accéder à la même page de configuration qu'avant, il me donne une erreur dans le navigateur:

"RuntimeException: échec de l'écriture du fichier cache" /opt/lampp/htdocs/Symfony/app/cache/dev/classes.php "."

mais alors quand je change les autorisations du dossier cache à nouveau en utilisant:

Sudo chmod -R 777 app/cache

la page est à nouveau affichée correctement

Je ne veux pas changer les autorisations à chaque fois après avoir effacé le cache. Y a-t-il une solution ou est-ce que je fais quelque chose de mal?

7
Ankit Khedekar

Voir "Configuration des autorisations" dans http://symfony.com/doc/current/book/installation.html#configuration-and-setup . La méthode que je préfère dans Ubuntu est setfacl, cela fonctionne (il suffit d’installer un paquet pour la première fois):

Sudo setfacl -R -m u:www-data:rwX -m u:`whoami`:rwX app/cache app/logs
Sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
15
garakkio

Avec symfony3

Sudo setfacl -R -m u:www-data:rwX -m u:`whoami`:rwX var/cache var/logs
Sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx var/cache var/logs

travaille pour moi.

0
anchan42

si l'utilisateur n'a pas les privilèges root correct est

su root 
export user="changeToYouUsername"

setfacl -R -m u:www-data:rwX -m u:$user:rwX var/cache var/log
setfacl -dR -m u:www-data:rwx -m u:$user:rwx var/cache var/log

cet exemple

Sudo setfacl -R -m u:www-data:rwX -m u:`whoami`:rwX app/cache app/logs

ne fonctionne que si l'utilisateur actuel a la racine et qu'il s'agit d'un utilisateur de journal Web (si nous le faisons à partir du compte racine - persmissions échoue - il utilise $ whoami comme nom d'utilisateur

il s'agit de l'utilisateur Sudo pour Symfony 4.

Sudo setfacl -R -m u:www-data:rwX -m u:`whoami`:rwX var/cache var/log;
Sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx var/cache var/log;
0
Developer