ubuntu20.04安装部署nginx+php7.4+mysql8.0+redis

要在 Ubuntu 20.04 上安装 MySQL 8.0、PHP 7.4、Nginx 1.24 和 Redis,您可以按照以下步骤操作:

1. 更新系统包列表

bash 复制代码
sudo apt update
sudo apt upgrade -y

2. 安装 Nginx 1.24

对于特定版本的 Nginx,您可能需要从官方源安装。但通常情况下,Ubuntu 的默认源中提供的版本已经足够新。在 Ubuntu 20.04 中,Nginx 的版本可能不是 1.24,但我们可以先安装默认版本。

bash 复制代码
sudo apt install nginx -y

3. 安装 MySQL 8.0

bash 复制代码
sudo apt install mysql-server -y

安装完成后,运行安全配置向导来增强安全性:

bash 复制代码
sudo mysql_secure_installation

运行安全配置脚本:

运行sudo mysql_secure_installation脚本来提高MySQL服务器的安全性。这个脚本会引导你完成以下步骤:

1、设置密码策略等级。

2、设置root用户的密码。

3、移除匿名用户。

4、禁用root用户的远程登录(根据需要选择)。

5、删除test数据库。

6、重新加载权限表。

4. 安装 PHP 7.4 及其依赖

首先添加官方 PPA(Personal Package Archive)以获取 PHP 7.4:

bash 复制代码
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.4-fpm php7.4-mysql php7.4-xml php7.4-curl php7.4-zip -y

5. 配置 Nginx 以支持 PHP

创建一个新的 Nginx 配置文件,用于处理 PHP 请求:

bash 复制代码
sudo nano /etc/nginx/sites-available/example.com

然后添加以下内容:

nginx 复制代码
server {
    listen 80;
    server_name example.com www.example.com;

    root /var/www/example.com/public_html;
    index index.php index.html index.htm;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    }
}

创建目录并设置正确的权限:

bash 复制代码
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example.com/public_html
sudo chmod -R 755 /var/www/example.com

创建符号链接激活站点:

bash 复制代码
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

测试 Nginx 配置并重启服务:

bash 复制代码
sudo nginx -t
sudo systemctl restart nginx

6. 安装 Redis

bash 复制代码
sudo apt install redis-server -y

完成上述步骤后,您应该已经在 Ubuntu 20.04 上成功安装了 MySQL 8.0、PHP 7.4、Nginx 和 Redis。

请注意,具体版本可能会有所变化,尤其是 Nginx 的版本,如果需要特定版本,您可能需要手动编译安装或者寻找第三方提供的软件包。

相关推荐
Decay__3 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子5 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
万联WANFLOW6 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery8 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__9 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森10 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼10 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
代码丰11 小时前
大 JSON 放进 Redis 之后,如何用 Stream 解耦耗时任务?
redis·后端·系统架构
by2099911 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina12 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例