191 字
1 分钟
以root用户运行php-fpm
2023-05-06

在开发环境中,为了避免文件权限带来的问题,可以将php-fpm的运行用户设为root.

但在默认情况下,直接修改php的运行用户为root,重启php-fpm进程后会报错

Terminal window
ERROR: [pool www] please specify user and group other than root
[26-Jun-2014 00:39:07] ERROR: FPM initialization failed

通过查看php-fpm的文档得知,如果要以root用户运行,需要加上特定参数

Terminal window
# php-fpm --help
...
-R, --allow-to-run-as-root
Allow pool to run as root (disabled by default)

如何添加这一参数:

  1. 找到 php-fpm.service , 可以使用命令

    Terminal window
    find / -name php-fpm.service
  2. 添加参数

    Terminal window
    ExecStart=/usr/sbin/php-fpm --nodaemonize -R
  3. 重启php-fpm.

    Terminal window
    systemctl restart php-fpm

注意,切勿在正式环境中使用root来运行php-fpm

Warning: php-fpm.service changed on disk. Run ‘systemctl daemon-reload’ to reload units. 修改后如有这个警告,执行即可。

以root用户运行php-fpm
https://blog.cuixu.cn/posts/run-php-fpm-as-root/
作者
崔旭
发布于
2023-05-06
许可协议
CC BY-NC-SA 4.0