Exécuter la commande de tâche symfony à partir de la permission de shell exec() refusée
j'ai l'appel de tâche symfony "doNothing" et je veux l'exécuter à partir de l'exécution shell_exec('/var/www/esm/symfony php symfony doNothing');
en appelant à mon action symfony
erreur apache disant permission refusée.
je pense www-data utilisateur n'avez pas la permission comment pourrais-je résolu ce problème?
Édité
error is
sh: / var/www/esm / symfony: permission denied
1 réponses
vous devriez chercher dans le répertoire où se trouve votre script.
utilisez ls -la pour afficher tous les fichiers dans le dossier et leurs permissions (pour exécuter le fichier de script php, il faut avoir au moins x bit assigné à www-data ou son groupe).
aussi tous les répertoires parents jusqu'à / doivent avoir x bit assigné à l'utilisateur/groupe pour qu'apache puisse changer de répertoire en.
Look. Vous avez de l'Arbre système de fichiers structurés:
-
/var/wwwest dans/var -
/var/www/esmest dans/var/www -
/var/www/esm/symfonyest dans/var/www/esm
ainsi l'utilisateur de données www devrait avoir la possibilité d'exécuter ( x bit) tous ces répertoires.
donc quand dans / exécuter ls -l et regarder où /var a x bit pour www-data user ou son groupe (drw x rw x - - -) et il possède ce répertoire. Quand dans /var exécuter ls -l un SO sur...
vous pouvez changer les permissions à 777 pour chaque répertoire. Mais N'utilisez pas la touche -R . Il suffit de modifier les permissions dans le répertoire seulement.