CentOS PHP服务器搭建指南
在Linux服务器环境中,CentOS因其稳定性和安全性被广泛采用,而PHP作为主流的服务器端脚本语言,常用于Web开发,本文将详细介绍如何在CentOS系统中搭建一个完整的PHP服务器环境,包括环境准备、安装必要组件、配置PHP及安全优化等内容。

环境准备与基础配置
在开始搭建PHP服务器前,需确保系统已更新至最新状态,并安装必要的开发工具,执行以下命令更新系统并安装开发工具包:
sudo yum update -y sudo yum groupinstall "Development Tools" -y
关闭防火墙和SELinux(或配置相应策略)以简化初始部署,生产环境中需谨慎处理:
sudo systemctl stop firewalld sudo setenforce 0
安装Web服务器(Apache/Nginx)
安装Apache
Apache是传统且稳定的Web服务器,适合初学者,通过以下命令安装:
sudo yum install httpd -y sudo systemctl start httpd sudo systemctl enable httpd
安装后,访问服务器的IP地址或域名,若显示Apache测试页面,则安装成功。
安装Nginx(可选)
Nginx以高性能和低资源占用著称,适合高并发场景,安装命令如下:
sudo yum install epel-release -y sudo yum install nginx -y sudo systemctl start nginx sudo systemctl enable nginx
Nginx默认配置文件位于/etc/nginx/nginx.conf,可根据需求调整。
安装PHP及扩展
添加PHP仓库
CentOS默认仓库中的PHP版本可能较旧,建议使用Remi仓库获取最新版本:

sudo yum install epel-release -y sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y sudo yum install yum-utils -y sudo yum-config-manager --enable remi-php74 # 根据需求选择版本,如PHP 7.4
安装PHP及常用扩展
以PHP 7.4为例,安装核心组件及常用扩展:
sudo yum install php php-cli php-fpm php-mysqlnd php-gd php-xml php-mbstring php-json php-curl -y
安装完成后,检查PHP版本:
php -v
配置PHP-FPM(Nginx环境)
若使用Nginx,需配置PHP-FPM以处理PHP请求,编辑/etc/php-fpm.d/www.conf,确保用户和组与Nginx一致(如nginx):
sudo systemctl start php-fpm sudo systemctl enable php-fpm
在Nginx配置中添加以下location块以解析PHP:
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;
} 配置数据库支持
PHP常与MySQL/MariaDB配合使用,安装MariaDB并配置:
sudo yum install mariadb-server mariadb -y sudo systemctl start mariadb sudo systemctl enable mariadb
运行安全脚本设置root密码:
sudo mysql_secure_installation
测试PHP环境
创建一个测试文件/var/www/html/info.php(Apache默认目录)或/usr/share/nginx/html/info.php(Nginx默认目录),内容如下:

<?php phpinfo(); ?>
通过浏览器访问http://服务器IP/info.php,若显示PHP配置信息,则环境搭建成功,测试后建议删除该文件以避免信息泄露。
安全优化
- 禁用危险函数:编辑
/etc/php.ini,在disable_functions中添加exec,passthru,shell_exec,system等。 - 文件权限设置:确保Web目录权限为755,文件权限为644:
sudo chown -R apache:apache /var/www/html # Apache sudo chmod -R 755 /var/www/html
- 定期更新:使用
yum update保持系统和软件包最新。
常见问题与故障排查
- 403 Forbidden错误:检查目录权限及SELinux状态,或尝试
sudo chcon -R -t httpd_sys_content_t /var/www/html。 - PHP页面显示下载或空白:确认Nginx/Apache配置中PHP处理器正确关联,并检查
php-fpm服务状态。
FAQs
Q1: 如何在CentOS中切换PHP版本?
A1: 若已安装多个PHP版本(如PHP 7.4和8.0),可通过yum-config-manager管理:
sudo yum-config-manager --disable remi-php74 sudo yum-config-manager --enable remi-php80 sudo yum update php -y
重启相关服务(如httpd或php-fpm)后生效。
Q2: PHP-FPM启动失败如何排查?
A2: 首先检查服务状态:systemctl status php-fpm,若失败,查看日志/var/log/php-fpm/www-error.log,常见原因包括配置文件语法错误(可通过php-fpm -t检查)或端口冲突,确保/etc/php-fpm.d/www.conf中的listen地址未被占用。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复