主题
安装与配置 PHP-FPM
PHP-FPM 是 PHP 的 FastCGI 进程管理器,用于处理动态请求,与 Nginx 配合提供高性能 PHP 服务。
一、安装 PHP-FPM
1. 在 Linux 系统上安装
CentOS / RockyLinux
bash
sudo dnf install php-fpm php-mysqlnd php-cli -y
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
sudo systemctl status php-fpmDebian / Ubuntu
bash
sudo apt update
sudo apt install php-fpm php-mysql php-cli -y
sudo systemctl enable php7.4-fpm
sudo systemctl start php7.4-fpm
sudo systemctl status php7.4-fpm2. Windows 系统
- 下载 PHP 官方 Zip 包
- 解压并修改
php.ini启用cgi.fix_pathinfo=1 - 配置
php-fpm.conf并启动php-cgi.exe -b 127.0.0.1:9000
二、PHP-FPM 池配置
PHP-FPM 通过 池(pool) 管理多个工作进程:
ini
; /etc/php-fpm.d/www.conf
[www]
user = nginx
group = nginx
listen = 127.0.0.1:9000
listen.allowed_clients = 127.0.0.1
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35主要参数说明
- user / group:运行 PHP-FPM 工作进程的用户与组
- listen:监听地址,可为 TCP 或 Unix Socket
- pm:进程管理模式(dynamic, static, ondemand)
- pm.max_children:允许同时处理的最大请求数
- pm.start_servers / min_spare_servers / max_spare_servers:控制动态进程数量
三、Nginx 配合 PHP-FPM
nginx
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}确保 fastcgi_pass 地址与 PHP-FPM 池监听地址一致。
四、常用服务管理命令
bash
sudo systemctl start php-fpm
sudo systemctl stop php-fpm
sudo systemctl restart php-fpm
sudo systemctl reload php-fpm通过正确安装与配置 PHP-FPM,你可以让 Nginx 高效处理 PHP 动态请求,实现稳定的 Web 服务环境。