CentOS 7 系统上安装 **Nginx + MySQL 5.7 + PHP 7.3 + Redis** 的完整步骤

安装前准备

1. 升级系统

bash 复制代码
yum update -y

2. 安装必要工具

bash 复制代码
yum install -y wget vim curl

一、安装 MySQL 5.7

1. 配置 MySQL 5.7 源

bash 复制代码
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
rpm -ivh mysql57-community-release-el7-11.noarch.rpm

2. 安装 MySQL 5.7

bash 复制代码
yum install -y mysql-community-server

3. 启动 MySQL 并设置开机自启

bash 复制代码
systemctl start mysqld
systemctl enable mysqld

4. 获取初始密码

bash 复制代码
grep 'temporary password' /var/log/mysqld.log

5. 登录 MySQL 并修改密码

bash 复制代码
mysql -u root -p

输入初始密码后,执行:

sql 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

密码需要包含大小写字母、数字和特殊字符。

6. 允许远程连接 (可选)

sql 复制代码
use mysql;
update user set host='%' where user='root';
flush privileges;

二、安装 Nginx

1. 配置 Nginx 源

bash 复制代码
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2. 安装 Nginx

bash 复制代码
yum install -y nginx

3. 启动 Nginx 并设置开机自启

bash 复制代码
systemctl start nginx
systemctl enable nginx

三、安装 PHP 7.3

1. 安装 EPEL 和 Remi 源

bash 复制代码
yum install -y epel-release
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

2. 安装 PHP 7.3

bash 复制代码
yum install -y php73 php73-php-fpm php73-php-mysqlnd php73-php-redis php73-php-gd php73-php-xml php73-php-mbstring

3. 启动 php-fpm 并设置开机自启

bash 复制代码
systemctl start php73-php-fpm
systemctl enable php73-php-fpm

4. 配置 PHP

编辑 /etc/opt/remi/php73/php.ini 文件,修改以下参数:

ini 复制代码
short_open_tag = On
max_execution_time = 300
memory_limit = 128M
post_max_size = 8M
upload_max_filesize = 2M
date.timezone = Asia/Shanghai

四、安装 Redis

1. 安装 Redis

bash 复制代码
yum install -y redis

2. 启动 Redis 并设置开机自启

bash 复制代码
systemctl start redis
systemctl enable redis

3. 配置 Redis 允许远程连接 (可选)

编辑 /etc/redis.conf 文件:

conf 复制代码
bind 0.0.0.0

重启 Redis:

bash 复制代码
systemctl restart redis

五、配置 Nginx 支持 PHP

1. 创建网站目录

bash 复制代码
mkdir -p /var/www/html
chmod -R 755 /var/www/html

2. 配置 Nginx

编辑 /etc/nginx/conf.d/default.conf 文件:

nginx 复制代码
server {
    listen       80;
    server_name  localhost;
    root   /var/www/html;
    index  index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    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;
    }
}

3. 重启 Nginx

bash 复制代码
systemctl restart nginx

六、测试

1. 创建 PHP 测试文件

bash 复制代码
echo "<?php phpinfo(); ?>" > /var/www/html/index.php

2. 访问测试

在浏览器中访问服务器 IP 地址,应该能看到 PHP 信息页面。

3. 测试 MySQL 连接

bash 复制代码
echo "<?php
\$servername = \"localhost\";
\$username = \"root\";
\$password = \"你的密码\";

// 创建连接
\$conn = new mysqli(\$servername, \$username, \$password);

// 检测连接
if (\$conn->connect_error) {
    die(\"连接失败: \" . \$conn->connect_error);
}
echo \"连接成功\";
\$conn->close();
?>" > /var/www/html/mysql_test.php

4. 测试 Redis 连接

bash 复制代码
echo "<?php
\$redis = new Redis();
\$redis->connect('127.0.0.1', 6379);
echo \"Connection to server sucessfully\";
echo \"Server is running: \" . \$redis->ping();
?>" > /var/www/html/redis_test.php

总结

以上步骤完成后,你的 CentOS 7 系统上就已经成功搭建了 Nginx + MySQL 5.7 + PHP 7.3 + Redis 环境。

如果有任何问题,请随时告诉我。

相关推荐
廋到被风吹走9 小时前
【数据库】【Redis】定位、优势、场景与持久化机制解析
数据库·redis·缓存
Evan芙10 小时前
搭建nexus服务,实现本地仓库、代理仓库
java·nginx·tomcat
过期动态11 小时前
JDBC高级篇:优化、封装与事务全流程指南
android·java·开发语言·数据库·python·mysql
一位代码11 小时前
mysql | 常见日期函数使用及格式转换方法
数据库·mysql
叶之香11 小时前
CentOS/RHEL 7、8安装exfat和ntfs文件系统
linux·运维·centos
一世琉璃白_Y11 小时前
pg配置国内数据源安装
linux·python·postgresql·centos
秋田君11 小时前
前端工程化部署入门:Windows + Nginx 实现多项目独立托管与跨域解决方案
前端·windows·nginx
杰克尼12 小时前
mysql_day01
数据库·mysql
Evan芙12 小时前
nginx核心配置总结,并实现nginx多虚拟主机
运维·数据库·nginx