nginx php-fpm

nginx将http请求映射为对应的fastcgi请求, nginx的fastcgi模块提供了fastcgi_params指令来处理这些映射关系,

nginx php-fpm

将nginx中的变量翻译成php中能够理解的变量

然后就是fastcgi_pass指令,这个指令用于指定fpm进程监听的地址,nginx会把所有php请求翻译成fastcgi请求后再发送到这个地址

nginx php-fpm

将所有以.php结尾的请求都交给fastcgi模块处理 ,从而把所有的php请求都交给了fpm处理

fpm收到请求后流程如下

1 FPM 的 master进程收到请求

2,master进程根据配置指派特定的worker进程进行请求处理,如果没有可用的进程那么就会报502错误 

3,worker进程处理请求,如果请求超时 则会报504 超时的错误

4,请求处理结束返回结果