我有symfony任务调用“doNothing”,我想执行shell_exec('/var/www/esm/symfony php symfony doNothing');
通过调用我的symfony动作
apache错误说权限被拒绝。
我认为www-data
用户没有权限我怎么解决这个问题?
被修改
error is
sh:/ var / www / esm / symfony:权限被拒绝
答案 0 :(得分:2)
您应该查看脚本所在的目录。
使用ls -la
显示文件夹中的所有文件及其权限(执行php脚本文件必须至少为{www>数据或其组分配x
位。)
同样,/
之前的所有父目录必须将x
位分配给用户/组,以便apache能够将目录更改为。
看。你有Tree structured Files系统:
/var/www
位于/var
/var/www/esm
位于/var/www
/var/www/esm/symfony
位于/var/www/esm
因此,www-data用户应该能够执行所有目录(x
位)。
因此,当/
执行ls -l
并查看/var
有x
位为www-data用户或其组(drw x
rw {{ 1}} ---)它拥有这个目录。在x
执行/var
时依旧......
您可以为每个目录更改777的权限。但是请勿使用ls -l
密钥。只需更改目录的权限。