想要在 Ubuntu 服务器上搭建一套高性能的 PHP 运行环境?Nginx 搭配 PHP-FPM 一直是 Linux Web 环境中非常成熟且常见的经典组合。两者协同工作时,Nginx 主要负责处理静态资源请求,而 PHP-FPM 专门执行 PHP 脚本,职责清晰,性能表现也更出色。下面就一步一步讲清楚 Ubuntu 下 Nginx 与 PHP-FPM 的配置方法,帮助你快速完成部署。

第一步:安装Nginx和PHP-FPM
在 Ubuntu 上安装 Nginx 和 PHP-FPM,其实只需要执行一组命令。建议先更新软件源,再直接安装相关软件包:
sudo apt-get update
sudo apt-get install nginx php-fpm
安装完成后,Nginx 和 PHP-FPM 服务通常会自动启动。不过此时它们还没有真正完成联动,还需要继续进行对接配置。
第二步:配置PHP-FPM
PHP-FPM 的默认配置文件路径通常位于/etc/php/7.x/fpm/pool.d/www.conf(注意将7.x替换为你当前安装的 PHP 版本,例如 7.4、8.1 或 8.2)。打开该文件后,先找到下面这一行:
;listen = /run/php/php7.x-fpm.sock
这一行前面带有分号,说明当前处于注释状态。你需要取消注释,也就是删除分号,并将其中的版本号改为实际使用的 PHP 版本。这样配置后,PHP-FPM 会通过 Unix socket 文件监听请求,而不是使用 TCP 端口。通常这种方式在本机通信时性能更高,同时也更安全。
接着继续向下查找类似下面的两行配置:
;listen.owner = www-data
;listen.group = www-data
同样需要取消注释,并将用户和用户组都设置为www-data。这是 Ubuntu 中 Nginx 默认常用的运行账户。完成这一步后,Nginx 才能具备访问和使用该 socket 文件的权限。修改完成后记得保存并退出配置文件。
第三步:配置Nginx
Nginx 的站点配置文件通常位于/etc/nginx/sites-a vailable/default。打开该文件后,在server块中找到location ~ \.php$这一段。默认配置下,这部分可能并未完整启用,你可以将其调整为如下内容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.x-fpm.sock;
}
这里需要特别注意,fastcgi_pass后面的 socket 路径必须和前面 PHP-FPM 配置文件中listen指定的路径完全一致,版本号也要对应正确。这一步的核心作用,就是告诉 Nginx:当用户请求 .php 文件时,不由 Nginx 自己解析,而是转交给 PHP-FPM 处理。
第四步:重启服务,让配置生效
完成 Nginx 和 PHP-FPM 配置后,需要重启对应服务,才能让新的设置正式生效:
sudo systemctl restart nginx
sudo systemctl restart php7.x-fpm
同样,别忘了将7.x替换成你实际安装的 PHP 版本。服务重启完成后,就可以进行测试了——你可以新建一个phpinfo.php文件,放到 Nginx 网站根目录中,然后通过浏览器访问该文件。如果页面能够正常显示 PHP 信息,就说明 Ubuntu 下的 Nginx 与 PHP-FPM 已经成功协同工作。
当这套 Nginx + PHP-FPM 环境搭建完成后,后续部署和管理 PHP 网站会更加高效。静态文件由 Nginx 直接响应,动态 PHP 请求交由 FPM 进程池处理,不仅结构清晰,也更利于提升网站性能和并发处理能力。如果后续你还想进一步优化 PHP 性能,例如调整 PHP-FPM 子进程数量、优化进程池参数,也可以继续在这个www.conf文件中进行设置。不过在此之前,先把基础环境稳定配置好,才是最关键的一步。
