史上唯一一个把cgi,fastcgi,php-cgi,php-fpm说清楚的文章

398 阅读1分钟

1、什么是cgi和FastCGI?

cgi是一种协议。nginx需要通过该协议与php解析器(php-cgi)交互,而php-cgi就是php自带的解析器(把php转化为html的过程)。FastCGI是cig的协议的升级(就像http1.1和http2)(php-fpm实现了FastCGI的一部分,剩下的解释器还是php-cgi)

2、那么nginx如何与cgi通信?

两种方式:

a、tcp(要申请端口和tcp一些资源),b、进程间通信(unix socket)(优先)

3、php-fpm和php-cgi什么关系?

php-fpm管理多个php-cgi的