一、关闭防火墙 & SELinux
bash
运行
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
二、安装依赖 & 扩展源
bash
运行
yum install -y wget gcc gcc-c++ make
# CentOS 7
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# CentOS 8
# dnf install -y epel-release
三、安装 Nginx
bash
运行
yum install -y nginx
systemctl start nginx
systemctl enable nginx
四、安装 MySQL(MariaDB)
bash
运行
yum install -y mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb
初始化安全设置(执行后按提示设置 root 密码):
bash
运行
mysql_secure_installation
五、安装 PHP 7.4(含常用扩展)
bash
运行
# 先装 remi 源
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install -y yum-utils
yum-config-manager --enable remi-php74
# 安装 PHP 及扩展
yum install -y php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-zip php-opcache
启动:
bash
运行
systemctl start php-fpm
systemctl enable php-fpm
六、Nginx 配置 PHP 解析
新建 / 修改站点配置:
plaintext
vim /etc/nginx/conf.d/default.conf
示例配置(直接替换):
plaintext
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
index index.php index.html index.htm;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
检查配置并重启:
bash
运行
nginx -t
systemctl restart nginx
七、测试 PHP 环境
bash
运行
echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/info.php
浏览器访问:
plaintext
http://服务器IP/info.php
看到 PHP 信息页即成功。
八、常用服务命令
bash
运行
# Nginx
systemctl start|stop|restart|status nginx
# MySQL/MariaDB
systemctl start|stop|restart|status mariadb
# PHP-FPM
systemctl start|stop|restart|status php-fpm