安装与配置 PHP-FPM
PHP-FPM 是 PHP 的 FastCGI 进程管理器,用于处理动态请求,与 Nginx 配合提供高性能 PHP 服务。
一、安装 PHP-FPM
1. 在 Linux 系统上安装
CentOS / RockyLinux
sudo dnf install php-fpm php-mysqlnd php-cli -y
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
sudo systemctl status php-fpm
`
Debian / Ubuntu
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-fpm
2. 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) 管理多个工作进程:
; /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
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 池监听地址一致。
四、常用服务管理命令
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 服务环境。
相关内容
- 备份与恢复 本节介绍 Nginx 配置备份与恢复方法,包括配置文件备份、日志备份、快速恢复和灾难恢复策略,保障服务安全可靠。
- 常用命令与服务管理 本节介绍常用的 nginx 命令与服务管理方法,包括启动、停止、重载、日志查看、配置检测等操作,帮助你熟练掌握 nginx 文档中的服务运维要点。
- Nginx 教程:目录结构与配置文件详解 本节 Nginx 教程详细介绍 nginx 目录结构与配置文件组成,帮助你掌握 nginx.conf、sites-enabled、logs 等常见路径及配置含义...
- Nginx 与 Docker 集成 本节介绍 Nginx 与 Docker 的集成方法,包括 Nginx 容器部署、配置卷挂载、端口映射和与后端服务协作,实现容器化高可用 Web 服务。
- FastCGI 工作原理 本节讲解 Nginx 与 FastCGI 的工作原理,包括请求转发、PHP-FPM 处理流程及数据交互方式,帮助你理解 nginx.conf 中动态内容处理机制...
- FastCGI 参数详解 本节详细讲解 Nginx 与 FastCGI 配合时的参数配置,包括 fastcgi_param 指令、标准参数与自定义参数,帮助你精确控制 PHP-FPM 请...