在CentOS系统中安装Nginx和PHP是搭建Web服务器环境的常见需求,Nginx作为高性能的HTTP和反向代理服务器,而PHP则是广泛使用的服务器端脚本语言,本文将详细介绍在CentOS系统上安装和配置Nginx与PHP的完整步骤,确保过程清晰易懂。

准备工作
在开始安装前,确保系统已更新至最新状态,打开终端,执行以下命令更新系统包:
sudo yum update -y
建议关闭防火墙或配置相应的端口规则,避免安装过程中出现连接问题,若使用防火墙,可通过以下命令开放HTTP(80)和HTTPS(443)端口:
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
安装Nginx
Nginx在CentOS的默认仓库中可用,但版本可能较旧,建议使用EPEL仓库获取最新版本,首先安装EPEL仓库:
sudo yum install epel-release -y
然后执行以下命令安装Nginx:
sudo yum install nginx -y
安装完成后,启动Nginx服务并设置为开机自启:
sudo systemctl start nginx sudo systemctl enable nginx
通过浏览器访问服务器的IP地址,应能看到Nginx的欢迎页面,确认安装成功。

安装PHP及扩展
PHP的安装同样依赖EPEL仓库,CentOS 7及以上版本推荐使用PHP 7.4或更高版本,以下是安装PHP 7.4的步骤:
sudo yum install yum-utils -y sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y sudo yum-config-manager --enable remi-php74 sudo yum install php php-fpm php-mysql php-gd php-xml php-mbstring -y
安装完成后,启动PHP-FPM服务并设置开机自启:
sudo systemctl start php-fpm sudo systemctl enable php-fpm
配置Nginx与PHP协同工作
默认情况下,Nginx无法直接处理PHP文件,需要通过PHP-FPM解析,编辑Nginx的默认配置文件:
sudo vi /etc/nginx/nginx.conf
在server块中添加以下配置,将PHP文件请求转发给PHP-FPM:
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
保存后,重启Nginx服务使配置生效:
sudo systemctl restart nginx
测试PHP功能
在Nginx的网站根目录(默认为/usr/share/nginx/html)创建一个测试文件:

sudo vi /usr/share/nginx/html/info.php
<?php phpinfo(); ?>
保存后,通过浏览器访问http://服务器IP/info.php,若看到PHP配置信息页面,说明Nginx与PHP已成功集成。
常见问题与优化
安装完成后,可能会遇到权限或路径问题,确保Nginx和PHP-FPM的用户配置一致,通常Nginx默认使用nginx用户,而PHP-FPM使用apache用户,需在/etc/php-fpm.d/www.conf中修改:
user = nginx group = nginx
为提升性能,可调整PHP-FPM的pm.max_children和pm.start_servers等参数,根据服务器内存合理配置。
相关问答FAQs
Q1: 安装PHP后访问PHP文件显示下载而非解析,如何解决?
A: 这通常是因为Nginx未正确配置PHP解析规则,检查nginx.conf中的location ~ \.php$块是否包含fastcgi_param SCRIPT_FILENAME指令,并确保PHP-FPM服务已启动。
Q2: 如何在CentOS上升级PHP版本?
A: 首先卸载旧版本PHP,然后通过yum-config-manager启用目标版本的remi仓库(如remi-php80),再执行sudo yum install php php-fpm即可升级,升级前建议备份配置文件和数据。