linux下如何重启php-fpm

linux下如何重启php-fpm
最新回答
这个世界该死

2020-10-19 18:39:06

在 Linux 下重启 php-fpm 的方法有多种,具体取决于系统使用的初始化系统(如 systemd 或 init.d)。以下是详细的步骤和说明:

1. 使用 systemd(推荐)

大多数现代 Linux 发行版(如 CentOS 7+、Ubuntu 16.04+)使用 systemd 管理服务。重启 php-fpm 的命令如下:

sudo systemctl restart php-fpm.service

验证是否重启成功

sudo systemctl status php-fpm.service
  • 若输出显示 Active: active (running),则说明重启成功。
  • 若失败,检查配置文件或日志(journalctl -u php-fpm.service)。
2. 使用 init.d 脚本(旧版系统)

如果系统使用 init.d(如 CentOS 6 或旧版 Ubuntu),可通过以下命令重启:

sudo /etc/init.d/php-fpm restart

验证状态

sudo /etc/init.d/php-fpm status3. 直接调用 php-fpm 二进制文件

通过指定配置文件路径重启(需确认配置文件路径是否正确):

sudo /usr/sbin/php-fpm --fpm-config /etc/php-fpm.d/
www.conf
restart

注意

  • 配置文件路径可能因系统而异(如 /etc/php/7.x/fpm/php-fpm.conf)。
  • 此方法会强制重启,可能丢失当前处理的请求。
常见问题排查
  1. 配置文件错误重启前检查配置语法:

    sudo php-fpm -t

    修复错误后再重启。

  2. 端口冲突确保 php-fpm 监听的端口(如 9000)未被占用:

    sudo netstat -tulnp | grep 9000
  3. 日志分析查看错误日志(路径通常为 /var/log/php-fpm.log 或 /var/log/php7.x-fpm.log):

    sudo tail -n 50 /var/log/php-fpm.log
  4. 权限问题确保运行 php-fpm 的用户(如 www-data 或 nginx)有权限访问相关目录。

总结
  • 推荐方法:优先使用 systemctl(简单且集成日志管理)。
  • 旧系统备用:init.d 脚本或二进制文件重启。
  • 关键步骤:重启后务必验证状态,并通过日志排查问题。

根据系统环境选择合适的方法,确保配置正确后再执行重启操作。