在Linux上,您可以使用systemd服务来实现PHP-FPM的自动重启。以下是创建和配置systemd服务的步骤:
使用文本编辑器(如nano或vim)创建一个新的服务文件。例如,我们将创建一个名为php-fpm.service的文件:
sudo nano /etc/systemd/system/php-fpm.service
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target
[Service]
Type=simple
PIDFile=/run/php-fpm/php-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
请注意,您需要根据您的PHP版本和安装路径修改ExecStart行。例如,如果您使用的是PHP 8.0,那么它应该是:
ExecStart=/usr/sbin/php-fpm8.0 --nodaemonize --fpm-config /etc/php/8.0/fpm/php-fpm.conf
保存并关闭服务文件。
重新加载systemd配置:
运行以下命令以使更改生效:
sudo systemctl daemon-reload
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
sudo systemctl status php-fpm.service
现在,PHP-FPM服务将在系统启动时自动运行,并在需要时自动重启。如果您需要手动重启服务,可以使用以下命令:
sudo systemctl restart php-fpm.service
或者,您可以使用以下命令重新加载配置并优雅地重启服务:
sudo systemctl reload php-fpm.service