在 Ubuntu 上监控 php-fpm 可以从 进程状态、性能、日志、系统资源 等多个层面来做。下面按常用程度给你一个完整方案。

systemctl status php-fpm# 或(Ubuntu 常见)
systemctl status php8.1-fpm
启动 / 重启 / 停止:
sudo systemctl start php8.1-fpmsudo systemctl restart php8.1-fpm
sudo systemctl stop php8.1-fpm
这是最常用、最专业的监控方式。
编辑 php-fpm pool 配置:
sudo vim /etc/php/8.1/fpm/pool.d/www.conf取消或添加:
pm.status_path = /statuslocation = /status {fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
allow 127.0.0.1;
deny all;
}
重载:
sudo systemctl reload nginxsudo systemctl reload php8.1-fpm
curl http://127.0.0.1/status输出示例:
pool: wwwprocess manager: dynamic
start time: 01/Jan/2026:10:00:00 +0800
start since: 3600
accepted conn: 12345
listen queue: 0
active processes: 5
idle processes: 10
total processes: 15
关键指标解释
ps aux | grep php-fpmwatch -n 1 "ps aux | grep php-fpm | wc -l"ss -x | grep phptop# 或
htop
查找 php-fpm
ps -eo pid,user,%cpu,%mem,cmd --sort=-%mem | grep php-fpmtail -f /var/log/php8.1-fpm.log在 www.conf 开启:
request_slowlog_timeout = 5sslowlog = /var/log/php-fpm/slow.log
查看:
tail -f /var/log/php-fpm/slow.log适合大规模监控
bash <(curl -Ss https://my-netdata.io/kickstart.sh)自动监控:
企业级方案
systemctl status php8.1-fpmcurl http://127.0.0.1/status
tail -f /var/log/php8.1-fpm.log
ps aux | grep php-fpm
如果你愿意,我可以:
只要告诉我你的 Ubuntu 版本 + php 版本 + 使用 Nginx 还是 Apache 即可。
deepin20怎么新增字体? deepin20安装字体的教程
Linux如何给文件权限? linux给文件添加可执行权限的技巧
deepin20桌面图标样式怎么修改? deepin更换图标主题的技巧
virtualbox打不开虚拟机怎么办? linux无法访问virtualbox的解决办法
deepin怎么注销系统? deepin系统注销与切换用户的方法
Manjaro linux怎么调鼠标速度? Manjaro鼠标设置光标速度的技巧