id="article_content"
class="article_content
csdn-tracking-statistics"
data-mod="popu_307"
data-dsm="post">
|
|
class="markdown_views">
|
|
|
|
首先解释一下LNMP的意思,我第一看到的时候感觉很高大上,后来才知道原来指的是Linux+Nginx+Mysql+PHP。接下来我介绍一下其工作原理。
|
|
首先,浏览器发送http
request请求到服务器(Nginx),服务器响应并处理web请求,将一些静态资源(CSS,图片,视频等)保存服务器上,然后将php脚本通过接口传输协议(网关协议)PHP-FCGI(fast-cgi)传输给PHP-FPM(进程管理程序),PHP-FPM不做处理,然后PHP-FPM调用PHP解析器进程,PHP解析器解析php脚本信息。PHP解析器进程可以启动多个,进行并发执行。然后将解析后的脚本返回到PHP-FPM,PHP-FPM再通过fast-cgi的形式将脚本信息传送给Nginx.服务器再通过Http
response的形式传送给浏览器。浏览器再进行解析与渲染然后进行呈现。 |
|
以上整个就是LNMP的工作过程。 | |
|
|
LAMP其实是指Linux+Apache+Mysql+PHP的结构体系。其工作原理如下: |
|
浏览器向服务器发送http请求,服务器 (Apache) 接受请求,由于php作为Apache的组件模块也会一起启动,它们具有相同的生命周期。Apache会将一些静态资源保存,然后去调用php处理模块进行php脚本的处理。脚本处理完后,Apache将处理完的信息通过http response的方式发送给浏览器,浏览器解析,渲染等一系列操作后呈现整个网页。 | |
|
|
在LNMP中,Nginx本身对脚本不做任何的处理,而是去调用一个PHP-FPM的进程,二者是相互独立的。
|
|
在LAMP中,PHP是Apache的一个模块,具有相同的生命周期。 ---------------- |