基于Ubuntu搭建LNMP环境

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本教程介绍如何在Ubuntu 18.04操作系统的ECS实例上搭建一套Nginx、MySQL和PHP应用的开发环境。

基于Ubuntu搭建LNMP环境

1.  创建实验资源

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

  1. 在实验室页面,单击创建资源

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

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

2.  安装Nginx服务

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

  1. 执行如下命令,更新软件库。
sudo apt-get update
  1. 执行如下命令,更新软件。
sudo apt-get upgrade -y
  1. 执行如下命令,安装Nginx服务。
sudo apt-get install nginx -y
  1. 执行如下命令,查看Nginx版本。
sudo nginx -v

返回如下结果,您可以看到Nginx版本。

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

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

返回如下页面,表示Nginx服务安装成功。

3.  安装及配置MySQL数据库

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

  1. 执行如下命令,安装MySQL数据库。
sudo apt install -y mysql-server
  1. 执行如下命令,检查MySQL是否安装成功。
sudo netstat -tap | grep mysql

返回如下结果,表示MySQL安装成功。

  1. (可选)执行如下命令,查看MySQL版本。
sudo mysql -V

返回如下结果,您可以看到MySQL版本。

  1. MySQL安全性配置。

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

mysql_secure_installation

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

c.    设置密码强度。

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

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

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

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

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

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

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

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

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

  1. 执行如下命令,检查MySQL服务是否正常运行。
sudo systemctl status mysql

返回如下结果,表示MySQL服务运行正常。

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

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

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

4.  安装PHP

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

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

返回如下结果,您可以看到PHP版本,PHP版本将在步骤六中配置Nginx时使用到 。

5.  配置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$ {},去除以下配置行的注释符号#,并将php7.0-fpm.sock改为php7.2-fpm.sock

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

6.  配置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.2-fpm
  1. 在您的本地浏览器中打开新页签,在地址栏中,访问http://<ECS公网地址>/phpinfo.php

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

返回如下页面,表示PHP语言环境安装成功。

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

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
275 3
|
1月前
|
Ubuntu
Ubuntu学习笔记(七):ubuntu下jupyter指定虚拟环境
本文介绍了如何在Ubuntu系统下使用Anaconda和Jupyter Notebook指定并切换不同的虚拟环境。
82 0
Ubuntu学习笔记(七):ubuntu下jupyter指定虚拟环境
|
2月前
|
Ubuntu 数据安全/隐私保护
Ubuntu22.04LTS环境部署实战
这篇文章提供了Ubuntu 22.04 LTS操作系统的详细安装步骤,包括选择语言、键盘布局、网络配置、软件源设置、磁盘分区、安装OpenSSH服务以及完成安装和首次登录系统的过程。
216 6
Ubuntu22.04LTS环境部署实战
|
3月前
|
Ubuntu 开发者 Python
|
2月前
|
Ubuntu 应用服务中间件 网络安全
Ubuntu 22.04环境下为Odoo开启80端口的方法
通过以上步骤,你应该能够在Ubuntu 22.04环境下为Odoo开启80端口。访问你的域名时,Nginx会将请求代理到Odoo,允许你通过80端口访问Odoo应用。
83 1
|
2月前
|
Ubuntu 开发工具 虚拟化
MacOS系统基于VMware Fusion配置Ubuntu 22.04LTS环境
这篇文章介绍了如何在MacOS系统上使用VMware Fusion虚拟化软件配置Ubuntu 22.04 LTS环境,包括自定义VMware Fusion网段、Ubuntu系统安装、配置root用户登录、设置静态IP地址、修改默认网卡名称、配置PS1变量、设置登录界面为字符界面、修改软件源和进行vim基础优化等步骤。
346 2
|
3月前
|
Ubuntu Shell C++
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
181 1
|
3月前
|
Ubuntu Linux 开发工具
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
|
3月前
|
机器学习/深度学习 Ubuntu Linux
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
|
3月前
|
Ubuntu 安全 搜索推荐
Linux Ubuntu 桌面环境概览
Ubuntu,在开源领域如同璀璨明星,以其卓越的桌面环境和用户体验赢得全球用户的心。采用优雅且功能丰富的GNOME桌面,Ubuntu界面简洁现代,提供直观易用的操作体验。无论是文件管理还是系统设置,图形界面让一切变得轻松。此外,高度可定制化特性让桌面成为个性展示的舞台,集成丰富应用满足多样化需求。背后强大的社区支持确保用户获得及时帮助,共享开源精神。
87 0