Code前端首页关于Code前端联系我们

PHPWEB开发的访问处理流程:Nginx、FastCGI、PHP-FPM

terry 2年前 (2023-09-25) 阅读数 50 #后端开发

PHP WEB开发从开始请求到最终结果,经历了一个什么样的过程?要理解这一点,我们就不可避免地要了解这些技术:Nginx、FastCGI和PHP-FPM。这些技术和PHP语言本身构建了WEB开发服务。今天我们就来认识一下他们。

Nginx

作为 Web 开发人员,Nginx 并不陌生。 Nginx 是一个像 Apache 一样的 WEB 服务器。帮助我们提供正向、反向代理、HTTP服务器等功能。额外的解释:什么是正向和反向代理

1。正向代理:隐藏真正的请求客户端。服务器不知道谁是真正的客户端。正如我们经常看到的那样,它充当客户的代理。翻墙

2.反向代理:隐藏真实服务器。它充当服务器的代理,这意味着我们不知道哪台服务器正在为我们服务,并且可以用于负载平衡。

FastCGI 和 PHP-FPM

说到 FastCGI,我们首先要了解一下 CGI 和 PHP-CGI。

1。 CGI是WEB服务器和程序之间的数据交换协议,它控制标准输入、输出和环境变量。

2。 PHP-CGI是CGI的一种实现,旨在实现WEB服务器与动态语言

3之间的通信。然而,CGI 程序的一个缺点是每个 Web 请求都会启动和关闭。这在数据量大、并发请求数高的今天尤其严重。

4。于是就有了FastCGI协议。 FastCGI是CGI的增强版本,这样任何处理请求的PHP-CGI进程都可以被重用,并且进程数量可以控制。

5。 PHP-FPM是FastCGI的实现。它包含两个进程,主进程和工作进程。只有一个主进程负责监听端口并接收来自 Web 服务器的请求。一般有多个worker进程(具体数量根据实际需要配置),每个进程内部都有一个PHP解释器,PHP代码实际执行在该解释器中。? 3。上图中的配置需要引入到nginx文件中。

PHPWEB开发访问处理流程:Nginx、FastCGI、PHP-FPM

4。配置的监听端口

PHPWEB开发访问处理流程:Nginx、FastCGI、PHP-FPM

5。 PHP 代码

PHPWEB开发访问处理流程:Nginx、FastCGI、PHP-FPM

6。浏览器视图

PHPWEB开发访问处理流程:Nginx、FastCGI、PHP-FPM

流程图如下

PHPWEB开发访问处理流程:Nginx、FastCGI、PHP-FPM

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门