温馨提示×

Ubuntu PHP-FPM的启动脚本怎么编写

小樊
47
2025-09-16 19:07:23
栏目: 编程语言

在 Ubuntu 系统中,PHP-FPM(FastCGI Process Manager)通常作为 PHP 的一个 FastCGI 实现来使用。它可以通过 systemd 进行管理,因此启动脚本通常是 systemd 服务单元文件。以下是如何创建和配置 PHP-FPM 的 systemd 服务单元文件的步骤。

  1. 创建 systemd 服务单元文件

    打开终端并使用文本编辑器(如 nanovim)创建一个新的 systemd 服务单元文件。例如,使用 nano

    sudo nano /etc/systemd/system/php-fpm.service 
  2. 编辑服务单元文件

    在打开的文件中,添加以下内容:

    [Unit] Description=The PHP FastCGI Process Manager After=syslog.target network.target [Service] Type=simple PIDFile=/run/php/php7.4-fpm.pid ExecStart=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target 

    请注意以下几点:

    • Description:服务的描述。
    • After:指定服务启动的顺序,确保在网络和日志服务之后启动。
    • Type:服务类型,这里使用 simple
    • PIDFile:PHP-FPM 的 PID 文件路径。
    • ExecStart:启动 PHP-FPM 的命令。请根据你的 PHP 版本调整路径和参数。
    • ExecReload:重新加载配置的命令,使用 USR2 信号来平滑重启 PHP-FPM。
    • PrivateTmp:为服务创建一个私有的临时目录。
  3. 重新加载 systemd 配置

    保存并关闭文件后,重新加载 systemd 配置以识别新的服务单元文件:

    sudo systemctl daemon-reload 
  4. 启动 PHP-FPM 服务

    使用以下命令启动 PHP-FPM 服务:

    sudo systemctl start php-fpm 
  5. 设置开机自启动

    如果希望 PHP-FPM 服务在系统启动时自动运行,可以使用以下命令:

    sudo systemctl enable php-fpm 
  6. 检查服务状态

    使用以下命令检查 PHP-FPM 服务的状态:

    sudo systemctl status php-fpm 

通过以上步骤,你可以在 Ubuntu 系统中创建和配置 PHP-FPM 的 systemd 服务单元文件,并确保服务能够正确启动和管理。

0