1、用戶將http請(qǐng)求發(fā)送給nginx服務(wù)器(用戶和nginx服務(wù)器進(jìn)行三次握手進(jìn)行TCP連接)
2、nginx會(huì)根據(jù)用戶訪問的URI和后綴對(duì)請(qǐng)求進(jìn)行判斷
3、通過第二步可以看出,用戶請(qǐng)求的是動(dòng)態(tài)內(nèi)容,nginx會(huì)將請(qǐng)求交給fastcgi客戶端,通過fastcgi_pass將用戶的請(qǐng)求發(fā)送給php-fpm
如果用戶訪問的是靜態(tài)資源呢,那就簡(jiǎn)單了,nginx直接將用戶請(qǐng)求的靜態(tài)資源返回給用戶。
4、wrapper收到php-fpm轉(zhuǎn)過來的請(qǐng)求后,wrapper會(huì)生成一個(gè)新的線程調(diào)用php動(dòng)態(tài)程序解析服務(wù)器
5、php會(huì)將查詢到的結(jié)果返回給nginx
6、nginx構(gòu)造一個(gè)響應(yīng)報(bào)文將結(jié)果返回給用戶
這只是nginx的其中一種,用戶請(qǐng)求的和返回用戶請(qǐng)求結(jié)果是異步進(jìn)行,即為用戶請(qǐng)求的資源在nginx中做了一次中轉(zhuǎn),nginx可以同步,即為解析出來的資源,服務(wù)器直接將資源返回給用戶,不用在nginx中做一次中轉(zhuǎn)。
推薦教程:nginx教程