面板 Supervisor 管理器常见问题

Supervisor管理器是问得最多的一个应用,为此我在这里整理了Supervisor管理器常见的一些问题,供提问前自行参考。

Q: 启动项目报错run supervisorctl start xxx failed,日志中有EACCES之类信息
A:这是权限问题,项目建议部署在面板安装目录(例如/www)下,而不是/root,如果你执意要部署在/root,则需要使用root用户启动应用并自行承担可能的风险。
如果已经移至安装目录下仍报错,请检查项目的所有者和用户组是否为www。

Q:启动项目报错run supervisorctl start xxx failed,日志中有'node': No such file or directory'npm': No such file or directory之类信息
A:如果你的nodejs是通过nvm之类的安装的(官方安装法),那么默认是找不到nodejs和npm的(没有链接到/usr/local/bin),这种情况下需要在Supervisor管理器编辑配置文件,末尾换行添加environment=PATH="/root/.nvm/versions/node/版本/bin:/usr/local/bin:/usr/bin:/bin"补充nodejs位置。
nodejs具体位置和版本可以通过whereis nodejs查看。

Q:启动PHP项目报错找不到拓展,但明明拓展已经安装了。
A:这个问题是因为早期面板错误给php.ini配置文件设置了700权限,导致Supervisor使用www用户启动php无法读取配置文件,也就不会加载额外的拓展,该问题已在2025/04/11之后优化解决,对于历史安装可以修改php.ini文件为644权限,所有者root解决。php.ini文件位于/www/server/php/版本号/etc目录下。