shell_exec 不适用于该命令
xvfb-run --auto-servernum --server-num=1
/var/sjs/slimerjs/var/www/html/sjs/www.js但是同样的命令在 Apache2 (mod_php ) 中运行良好
那么为什么 php5-fpm 不能运行这个命令呢?
- 检查你的 php.ini php-fpm 使用的。查找
disable_functions
指令并从值中删除shell_exec
。 - 可能是用户(运行 php-fpm),没有读取/执行某些文件的权限。使用
ls -l /var/sjs/slimerjs /var/www/html/sjs/www.js
命令检查权限。我认为,该用户必须具有执行/var/sjs/slimerjs的权限,并读取/var/www/html/sjs/www.js。您可以通过命令chmod +x /var/sjs/slimerjs
和chmod +r /var/www/html/sjs/www.js
添加权限,但这不利于安全性,因为任何用户都可以执行/读取文件。最好将用户添加到某个组,更改此文件的所有者组,并为第一个文件设置权限 754,为第二个文件设置权限 744。