手动部署LNMP环境(Ubuntu 20)

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 本教程介绍如何在Ubuntu 20.04操作系统的ECS实例上搭建一套Nginx、MySQL和PHP应用的开发环境。

手动部署LNMP环境(Ubuntu 20)

1.  创建实验资源

开始实验之前,您需要先创建实验相关资源。

  1. 在实验室页面,单击创建资源
  2. (可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、用户信息等)。

说明:资源创建过程需要1~3分钟。

2.  准备工作

  1. 执行如下命令,检查防火墙当前状态。
sudo ufw status

返回结果如下,您可查看到当前防火墙的状态。

说明:

  • 如果防火墙状态为Status: inactive,则表示防火墙为关闭状态。
  • 如果防火墙状态为Status: active,则表示防火墙为开启状态。

  1. 关闭防火墙。如果防火墙为关闭状态可以忽略此步骤。

如果您的防火墙为开启状态,需要执行如下命令,关闭防火墙并关闭开机自启动防火墙。

sudo ufw disable

3.  安装Nginx服务

Nginx是一个高性能的HTTP和反向代理web服务器。本步骤将指导您如何在ECS实例上安装Nginx服务。

  1. 执行如下命令,更新Ubuntu系统内的软件包。
sudo apt update
  1. 执行如下命令,安装Nginx。
sudo apt -y install nginx
  1. 执行如下命令,查看Nginx版本。
sudo nginx -v

返回如下结果,您可以查看到Nginx的版本信息为1.18.0。同时也表示Nginx已成功安装。

4.  安装MySQL

MySQL是一个关系型数据库管理系统。本步骤将指导您如何在ECS实例上安装MySQL。

  1. 执行如下命令,安装MySQ。
sudo apt -y install mysql-server
  1. 执行如下命令,查看MySQL版本。
sudo mysql -V

返回结果如下所示,您可以查看到MySQL的版本为8.0.29。同时也表示MySQL已成功安装。

5.  安装PHP

PHP是一种广泛使用的通用开源脚本语言,适合于Web网站开发,它可以嵌入HTML中。本步骤将指导您如何在ECS实例上安装PHP服务。

  1. 执行如下命令,安装PHP。
sudo apt -y install php-fpm
  1. 执行如下命令,查看PHP版本。
sudo php -v

返回如下结果,您可以查看到PHP版本为7.4.3,同时也表示PHP已成功安装。

6.  配置Nginx服务

本步骤将指导您如何修改Nginx默认的配置文件,添加Nginx对PHP的支持。

  1. 打开Nginx默认的配置文件。
sudo vim /etc/nginx/sites-enabled/default
  1. i进入编辑模式,修改Nginx配置文件。

a.在server{}内,找到index开头的配置行,在该行中添加index.php

b.在server{}内找到location ~ \.php$ {},去除以下配置行的注释符号#

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

c.按Esc退出编辑模式,然后输入:wq并按Enter键,保存并退出文件。

  1. 运行以下命令,重启Nginx服务。
sudo systemctl restart nginx.service

7.  配置MySQL

本步骤将指导您如何对MySQL进行安全性配置和测试登录MySQL数据库。

  1. 设置MySQL的root用户的初始密码。

a.执行如下命令,进入MySQL。

sudo mysql

b.执行如下SQL语句,设置MySQL的root初始密码为Password123

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'Password123';

c.执行如下命令,退出MySQL数据库。

exit
  1. MySQL安全性配置。

a.执行如下命令,对MySQL进行安全性配置。

sudo mysql_secure_installation

b.输入MySQL的root密码Password123

c.输入Y使用MySQL自带的密码安全校验工具。

d.输入Y更改MySQL的root密码。

e.设置密码强度。

本教程中,输入0使用较安全的LOW等级。您可以根据实际业务需求选择适用的密码强度,建议您使用较高的密码强度,增强对数据安全的保护。

f.输入root用户的新密码并按下Enter键,例如密码输入为123456789

说明:在输入密码时,系统为了最大限度的保证数据安全,命令行将不做任何回显。您只需要输入正确的密码信息,然后按Enter键即可。

g.再次输入root用户的新密码并按下Enter键。

h.输入Y并按下Enter键,确认使用已设置的密码。

i.输入Y并按下Enter键,删除匿名用户。

j.输入Y并按下Enter键,禁止root账号远程登录。

k.输入Y并按下Enter键,删除test库以及用户对test库的访问权限。

l.输入Y并按下Enter键,重新加载授权表。

返回结果如下,表示配置完成。

  1. 执行如下命令,登录MySQL。
sudo mysql -uroot -p
  1. 输入您的root用户新密码并按Enter键。

返回结果如下,表示您已成功登录MySQL数据库。

  1. 执行如下命令,退出MySQL数据库。
exit

8.  配置PHP

本步骤将指导您如何创建PHP测试页面并访问测试页面。

  1. 执行如下命令,在Nginx网站根目录中,新建phpinfo.php文件。
sudo vi /var/www/html/phpinfo.php
  1. i进入编辑模式,添加以下配置信息。

说明:phpinfo()函数会展示PHP的所有配置信息。

<?php echo phpinfo(); ?>
  1. Esc退出编辑模式,然后输入:wq并按Enter键,保存并退出文件。
  2. 执行如下命令,启动PHP。
sudo systemctl start php7.4-fpm

9.  测试访问PHP配置信息页面

在您的本机浏览器中打开新页签,在地址栏中,访问http://<ECS公网地址>/phpinfo.php

说明:您需要将<ECS公网地址>替换为您ECS实例的公网IP。

返回如下页面,您可以查看到PHP配置信息页面,表示LNMP环境部署成功。

10.  后续步骤

成功搭建LNMP环境后,建议您删除phpinfo.php测试文件,消除数据泄露风险。

rm -rf <网站根目录>/phpinfo.php

本教程中网站根目录为/var/www/html,则需要运行如下命令删除测试文件。

rm -rf /var/www/html/phpinfo.php

实验链接:https://developer.aliyun.com/adc/scenario/ac45dde1f21d4f5b8d0c8f2788e71df8

相关文章
|
5月前
|
人工智能 Ubuntu 前端开发
Dify部署全栈指南:AI从Ubuntu配置到HTTPS自动化的10倍秘籍
本文档介绍如何部署Dify后端服务及前端界面,涵盖系统环境要求、依赖安装、代码拉取、环境变量配置、服务启动、数据库管理及常见问题解决方案,适用于开发与生产环境部署。
1233 1
|
4月前
|
Ubuntu 编译器 开发工具
在Ubuntu系统上搭建RISC-V交叉编译环境
以上步骤涵盖了在Ubuntu系统上搭建RISC-V交叉编译环境的主要过程。这一过程涉及了安装依赖、克隆源码、编译安装工具链以及设置环境变量等关键步骤。遵循这些步骤,可以在Ubuntu系统上搭建一个用于RISC-V开发的强大工具集。
502 22
|
4月前
|
Ubuntu 编译器 计算机视觉
Ubuntu 20.04环境下无法找到#include<opencv/cv.h>文件 - 解决方案。
希望这些信息能帮助你解决遇到的问题。
309 10
|
5月前
|
存储 Ubuntu 自动驾驶
运行Udacity的MPC控制项目指南(project_10)在Ubuntu 18.04环境下
以上步骤应该能够帮助您成功设置并运行Udacity MPC控制项目,在此过程中您将学习如何应用模型预测控制理论去指导车辆沿着轨迹自主驾驶,在模拟环境下测试其效果。这个过程不但涵盖了理论知识也有实践操作,对于学习自动驾驶车辆控制系统非常有帮助。
198 15
|
6月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
448 16
|
5月前
|
消息中间件 人工智能 运维
Ubuntu环境下的 RabbitMQ 安装与配置详细教程
本文聚焦在Ubuntu下RabbitMQ安装与配置教程,旨在帮助读者快速构建稳定可用的消息队列服务。
1104 6
|
6月前
|
Ubuntu 安全 Linux
Ubuntu 24.10 发行版登场:Linux 6.11 内核、GNOME 47 桌面环境
Ubuntu 24.10 还带来了 GNOME 47,增强了性能和稳定性,并引入了新功能。此版本的 Ubuntu 还默认在采用 Nvidia 显卡的硬件上切换到 Wayland,并在支持的硬件上默认使用开源的 Nvidia 560 内核模块。 另外需要注意的是,Ubuntu 24.10 是稳定版本,但作为非 LTS 版本,仅支持 9 个月。
|
应用服务中间件 PHP nginx
|
应用服务中间件 PHP nginx
|
4月前
|
Ubuntu 安全 iOS开发
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for Ubuntu 24.04 - Nessus 自动化安装程序
362 5