发布于2026-07-14 阅读(0)
扫一扫,手机访问
在 CentOS 上配置 PHP-FPM,其实并不复杂。下面我们从零开始,一步步把环境搭起来。整个过程分为几个关键环节:安装核心组件、调整参数、启动服务,再让 Web 服务器(以 Nginx 为例)和 PHP-FPM 握手成功。最后,用一个小小的测试文件验证一切是否正常运转。
先把系统包列表更新到最新,然后安装 PHP 核心组件和 PHP-FPM(FastCGI 进程管理器)。如果还没启用 EPEL 仓库,记得先安装 epel-release:

sudo yum update -y
sudo yum install -y epel-release php php-fpm
PHP-FPM 的主配置文件通常位于 /etc/php-fpm.d/www.conf(部分版本可能在 /etc/php/{version}/fpm/pool.d/www.conf)。需要修改几个关键参数,下面逐一说明。
指定运行 PHP-FPM 进程的用户和组,要与 Web 服务器用户保持一致。比如用 apache 或 nginx:
user = apache
group = apache
选 Unix Socket 还是 TCP 端口?Socket 性能更高,推荐使用。如果选 Socket,需要指定路径并设置权限;如果选 TCP 端口,注意别跟其他服务冲突:
listen = /run/php-fpm/www.sock
listen.owner = apache
listen.group = apache
# 或者用 TCP 端口(例如 127.0.0.1:9000)
# listen = 127.0.0.1:9000
推荐 dynamic 模式,让 PHP-FPM 根据负载动态调整进程数。进程池参数怎么设?看服务器内存来算:
pm = dynamic
pm.max_children = 50 # 最大子进程数(1GB 内存大约 20-30 个)
pm.start_servers = 5 # 启动时的进程数
pm.min_spare_servers = 2 # 最小空闲进程数
pm.max_spare_servers = 10# 最大空闲进程数
当然,这些数值可以根据实际负载微调,但上面这套配置对大多数中小型站点已经够用了。
参数改好后,启动 PHP-FPM 并设置开机自启:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
顺手用 systemctl status php-fpm 检查一下状态,确认没有报错信息。
关键一步:让 Web 服务器把 PHP 请求转发给 PHP-FPM 处理。编辑 Nginx 站点配置文件(比如 /etc/nginx/conf.d/default.conf),添加如下内容:
server {
listen 80;
server_name yourdomain.com; # 替换成实际域名或 IP
root /var/www/html; # 网站根目录
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
# 处理 PHP 请求
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/www.sock; # 与 PHP-FPM 的 listen 路径一致
# 或者用 TCP 端口:fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
改完后重载 Nginx 配置:
sudo systemctl reload nginx
在网站根目录(比如 /var/www/html)创建一个 info.php 文件,内容就一行:
接着用浏览器访问 http://yourdomain.com/info.php。如果能看到 PHP 信息页面(显示“PHP Version”“Server API”等),说明 PHP-FPM 配置成功了。
sudo setsebool -P httpd_can_network_connect 1sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8