Nginx-学习目录
1、什么是LNMP
LNMP是一套技术的组合
L=Linux
N=Nginx
M=[MySQL|Mariadb]
P=[ PHP | Python]
2、LNMP实现过程
2.1、过程说明
用户请求 http://cyc.com/index.php
对于Nginx服务而言,是无法处理index.php这样的动态脚本的,那么Nginx该如何配置,才能支持这样的动态请求呢?
第一步:当用户发起HTTP请求,请求首先被Nginx接收;
第二步:Nginx通过预先定义好的location规则进行匹配;
第三步:Nginx将匹配到的动态内容,通过fastcgi协议传到给后端的php应用服务处理;
2.2、流程图

3、LNMP实现细节
3.1、Nginx、PHP、MysQL之间工作原理
1、用户首先通过http协议发起请求,请求会先抵达Nginx
2、Nginx根据用户的请求进行Location规则匹配;
3、Location如果匹配到请求是静态,则由Nginx读取本地直接返回;
4、Location如果匹配到请求是动态,则由Nginx将请求转发给fastcgi协议;
5、fastcgi 收到后会将请求后,交给php-fpm管理进程;
6、php-fpm管理进程接收到后会调用具体的工作进程warrap;
7、wrapper进程会调用php解析器解析代码,php解析后直接返回;
8、如果有查询数据库操作,则由php连接数据库(用户、密码、IP)发起查询的操作。
9、最终数据由mysql <-> php <-> php-fpm <-> fastcgi <-> nginx <-> http <->user;
3.2、流程图
