php和nginx交互实例讲解

yipeiwu_com5年前PHP代码库

Nginx与PHP交互过程的7步走(用户对动态PHP网页访问过程)

  1. step1:用户将http请求发送给nginx服务器(用户和nginx服务器进行三次握手进行TCP连接)。
  2. step2:nginx会根据用户访问的URL和后缀对请求进行判断。
  3. step3:通过第二步可以看出,用户请求的是动态内容,nginx会将请求交给fastcgi客户端,通过fastcgi_pass将用户的请求发送给php-fpm。如果用户访问的是静态资源呢,那就简单了,nginx直接将用户请求的静态资源返回给用户。
  4. step4:fastcgi_pass将动态资源交给php-fpm后,php-fpm会将资源转给php脚本解析服务器的wrapper。
  5. step5:wrapper收到php-fpm转过来的请求后,wrapper会生成一个新的线程调用php动态程序解析服务器。
  6. step6:php会将查询到的结果返回给nginx。
  7. step7:nginx构造一个响应报文将结果返回给用户。

这只是nginx的其中一种,用户请求的和返回用户请求结果是异步进行,即为用户请求的资源在nginx中做了一次中转,nginx可以同步,即为解析出来的资源,服务器直接将资源返回给用户,不用在nginx中做一次中转。

即:Nginx -> FastCGI -> php-fpm -> FastCGI Wrapper -> php解析器

以上7个就是交互的简单步骤,感谢大家的学习和对【宜配屋www.yipeiwu.com】的支持。

相关文章

PHP使用CURL实现对带有验证码的网站进行模拟登录的方法

网上的很多模拟登录程序,大都是通过服务程序apache之类的运行,获取到验证码之后显示在网页上,然后填上再POST出去,这样虽然看起来很友好,但是既然模拟登录,登录后所干的事情就不一定是...

php中显示数组与对象的实现代码

1、 使用 print_r ( $array/$var ) print 是打印的意思,而r则取自Array的单词,那么该函数的功能就是打印数组内容,它既可以打印数组内容,也可以打印普通的...

探讨多键值cookie(php中cookie存取数组)的详解

cookie默认不能存数组,所以下面的写法是错误的。报错如下:Warning: setcookie() expects parameter 2 to be string, array g...

PHP 一个页面执行时间类代码

核心代码 <?php class Timer//页面执行时间类 { var starttime;//页面开始执行时间 var stoptime;//页面结束执行...

PHP获取redis里不存在的6位随机数应用示例【设置24小时过时】

本文实例讲述了PHP获取redis里不存在的6位随机数的方法。分享给大家供大家参考,具体如下: PHP获取6位数随机数 PHP str_shuffle() 函数 str_shuffle(...