原文链接:https://www.chenweiliang.com/cwl-32493.html
你的系统找不到 php-fpm.service
,可能有以下几种情况:
1. 检查 PHP-FPM 版本
不同的 Linux 发行版和 PHP 版本,php-fpm
服务名称不同。先检查 PHP 版本:
php -v
比如输出:
PHP 8.1.2 (cli) (built: Jan 23 2022 09:47:36) ( NTS )
说明你在使用 PHP 8.1,那么 PHP-FPM 的服务可能是 php8.1-fpm
。
你可以用以下命令查看具体的 FPM 进程:
ps aux | grep php-fpm
如果输出类似:
root 1234 0.0 0.1 123456 12345 ? Ss 12:34 0:00 php-fpm: master process (/etc/php/8.1/fpm/php-fpm.conf)
那么你的服务名是 php8.3-fpm
。
尝试:
sudo systemctl restart php8.3-fpm
2. 查找 PHP-FPM 服务名称
如果不确定 PHP-FPM 的服务名称,可以用:
systemctl list-units --type=service | grep fpm
或者:
systemctl | grep php
如果返回:
php7.4-fpm.service loaded active running The PHP 7.4 FastCGI Process Manager
说明你的 PHP 版本是 7.4,正确的命令应该是:
sudo systemctl restart php7.4-fpm
3. 检查 PHP-FPM 是否已安装
如果 systemctl
里找不到 php-fpm
,说明 PHP-FPM 可能没安装。可以运行:
dpkg -l | grep php
如果没有 php-fpm
相关包,安装它:
sudo apt update
sudo apt install php-fpm
然后再尝试:
sudo systemctl restart php-fpm
4. 手动启动 PHP-FPM
如果 systemctl
还是找不到服务,可以手动启动:
sudo /usr/sbin/php-fpm
然后检查进程:
ps aux | grep php-fpm
如果 PHP-FPM 启动了但 systemctl
仍然找不到服务,你可以创建一个 Systemd 配置文件:
sudo nano /etc/systemd/system/php-fpm.service
添加:
[Unit]
Description=The PHP FastCGI Process Manager
After=network.target
[Service]
ExecStart=/usr/sbin/php-fpm
Restart=always
User=www-data
Group=www-data
[Install]
WantedBy=multi-user.target
然后:
sudo systemctl daemon-reload
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
总结
- 确定 PHP 版本 (
php -v
) - 使用正确的服务名 (
php7.4-fpm
或php8.1-fpm
等) - 检查 PHP-FPM 是否安装 (
dpkg -l | grep php
) - 手动启动 (
/usr/sbin/php-fpm
) - 如果没有 Systemd 服务,手动创建
你可以尝试这些方法,看看哪个能解决你的问题!💡
欢迎转载《🚨 PHP-FPM重启失败?1分钟搞定Unit php-fpm.service not found》
欢迎分享本文链接:https://www.chenweiliang.com/cwl-32493.html
网站地址:https://www.chenweiliang.com/
欲获取更多资讯内幕和秘技,欢迎进入Telegram频道:https://www.chenweiliang.com/go/tgchannel
没有评论:
发表评论