php和nginx怎么实现交互?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
Nginx与PHP交互过程的7步走(用户对动态PHP网页访问过程)
step1:用户将http请求发送给nginx服务器(用户和nginx服务器进行三次握手进行TCP连接)。
step2:nginx会根据用户访问的URL和后缀对请求进行判断。
step3:通过第二步可以看出,用户请求的是动态内容,nginx会将请求交给fastcgi客户端,通过fastcgi_pass将用户的请求发送给php-fpm。如果用户访问的是静态资源呢,那就简单了,nginx直接将用户请求的静态资源返回给用户。
step4:fastcgi_pass将动态资源交给php-fpm后,php-fpm会将资源转给php脚本解析服务器的wrapper。
step5:wrapper收到php-fpm转过来的请求后,wrapper会生成一个新的线程调用php动态程序解析服务器。
step6:php会将查询到的结果返回给nginx。
step7:nginx构造一个响应报文将结果返回给用户。
这只是nginx的其中一种,用户请求的和返回用户请求结果是异步进行,即为用户请求的资源在nginx中做了一次中转,nginx可以同步,即为解析出来的资源,服务器直接将资源返回给用户,不用在nginx中做一次中转。
即:Nginx -> FastCGI -> php-fpm -> FastCGI Wrapper -> php解析器
看完上述内容,你们掌握php和nginx怎么实现交互的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。