LNMP详解(四)——LNMP原理与简单部署

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: LNMP详解(四)——LNMP原理与简单部署

今天继续给大家介绍Linux运维的相关知识,本文主要内容是LNMP原理与简单部署。

一、LNMP架构原理
LNMP架构,是指在Linux平台下,由运行Nginx的web服务器,运行PHP的动态页面解析程序和运行MySQL的数据库组成的网站架构,也是当前常用的系统架构之一。
在LNMP架构中,Nginx本身只负责静态页面的处理,当需要处理动态页面时,则需要Nginx将相关.php页面转交给php-fpm来进行处理,php-fpm会将PHP页面解析成html文件,然后交给Nginx进行处理。
与LAMP架构相比,LNMP的主要区别在于对PHP的处理上,LAMP对于PHP动态资源的处理是通过Apache的libphp5.so模块进行的,该模块内嵌如Apache中,而Nginx对PHP动态资源的处理则是通过php-fpm进行的,php-fpm是一个独立的模块,因此,在搭建LNMP架构时,Nginx和php-fpm都需要进行开启。LNMP架构如下所示:

二、LNMP部署实战
接下来,我们就进行LNMP的部署实战。

(一)YUM源配置
在进行实战YUM部署LNMP前,我们要首先配置LNMP的YUM源。想要YUM安装Nginx,就必须安装EPEL的扩展源,可以执行以下命令进行EPEL扩展源的安装:

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
1
(二)Nginx安装与部署
Nginx的安装非常简单,只需要执行命令:

yum install -y nginx
1
即可,Nginx安装完毕后,Nginx的启动命令为:

systemctl start nginx
1
启动后,尝试访问Nginx页面,结果如下:

以这种方式安装的Nginx,其默认配置文件为/etc/nginx/nginx.conf,默认根目录为/usr/share/nginx/html。

(三)PHP安装与部署
接下来,我们需要安装PHP,并使得PHP支持Nginx。首先,安装PHP和PHP与Nginx的对接php-fpm,执行命令:

yum install -y php php-fpm
1
在安装完成后,我们还需要修改Nginx的配置文件,在http模块的server模块下,添加如下内容:

location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
1
2
3
4
5
6
7
添加后的页面如下所示:

在以上配置中,location模块是Nginx的一个定位模块,location后面的“~”表示进行正则表达式的匹配,匹配的对象是以.php结尾的动态资源。这样,当这样的资源被匹配到之后,就会进行location模块中指定的处理。fastcgi_pass指定了php-fpm模块的IP地址和端口号,fastcgi_param参数指定了读取php文件的位置。
上述安装完成后,在网站根目录中写一个PHP的测试页面,重启PHP后尝试访问,结果如下:

(四)MySQL安装与部署
最后,我们来安装MySQL,MySQL的安装比较简单,只需要执行命令:

yum install -y mariadb mariadb-server
1
安装完成后,发现当前系统打开了3306、9000和80端口,如下所示:

为了使得我们的PHP支持MySQL,还需要安装php-mysql,如下所示,这样,安装完成后,我们的PHP就可以与MySQL对接了。
尝试安装wordpress,结果如下所示:

原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/122769818

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
关系型数据库 MySQL 应用服务中间件
手动部署LNMP环境(Alibaba Cloud Linux 2)
本场景带您体验如何在Alibaba Cloud Linux 2.1903 LTS 64位操作系统的云服务器上搭建LNMP环境。
|
6月前
|
弹性计算 关系型数据库 MySQL
一键部署LNMP(源码安装版本)
【4月更文挑战第29天】
78 2
|
6月前
|
弹性计算 关系型数据库 Shell
一键部署LNMP(RPM 包版本)
【4月更文挑战第29天】
91 0
|
关系型数据库 MySQL 应用服务中间件
Nginx__高级进阶篇之LNMP动态网站环境部署
Nginx__高级进阶篇之LNMP动态网站环境部署
197 0
|
11月前
|
关系型数据库 MySQL 应用服务中间件
小白带你部署LNMP分布式部署
小白带你部署LNMP分布式部署
207 0
|
弹性计算 关系型数据库 MySQL
基于ROS快速部署LNMP环境(CentOS 7)
本教程提供在阿里云云服务器ECS上基于CentOS 7.9操作系统搭建LNMP环境的指引。LNMP是应用广泛的网站服务系统,由四种免费的开源软件Linux、Nginx、MySQL和PHP组成。搭建好LNMP环境后,您可以在该ECS实例上搭建网站、访问网站
|
关系型数据库 MySQL 应用服务中间件
手动部署LNMP环境(Ubuntu 20)
本教程介绍如何在Ubuntu 20.04操作系统的ECS实例上搭建一套Nginx、MySQL和PHP应用的开发环境。
|
Linux 应用服务中间件 网络安全
手动部署LNMP环境(CentOS 8)
本场景带您体验如何在CentOS 8操作系统的云服务器上搭建LNMP环境。
|
关系型数据库 MySQL 应用服务中间件
lnmp部署
lnmp部署
|
6月前
|
关系型数据库 应用服务中间件 nginx
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建