流程簡(jiǎn)述:
- 請(qǐng)求進(jìn)入
nginx
后,在Read Request Header
中讀取這個(gè)請(qǐng)求的請(qǐng)求行和header數(shù)據(jù)信息;根據(jù)這個(gè)信息確定當(dāng)前請(qǐng)求在哪個(gè)server中進(jìn)行處理(這個(gè)階段使用了 9 10 11 12 三個(gè)筆記)- 流程走到
Identify Configuration Block
階段井氢,在這里確定是哪個(gè)location
模塊對(duì)這個(gè)請(qǐng)求生效- 向下流程走到
Apply Rate Limits
階段产镐,這里根據(jù)并發(fā)連接數(shù)佩微,超過(guò)限制則直接返回或做其他處理- 向下流程走到
Perform Authentication
階段弄跌,這里根據(jù)傳遞的refer
等字段查看是否盜鏈請(qǐng)求,或者根據(jù)協(xié)議驗(yàn)證用戶(hù)請(qǐng)求權(quán)限- 向下走到
Generate Content
階段虏两,生成響應(yīng)內(nèi)容愧旦,這里的內(nèi)容可以是在nginx
部署的靜態(tài)信息,也可以是通過(guò)反向代理獲取的動(dòng)態(tài)接口信息(Upstream Services
)定罢,也可能會(huì)產(chǎn)生重定向或子請(qǐng)求(Internal redirects and subrequests
)不斷獲取其他內(nèi)容生成響應(yīng)信息- 生成相應(yīng)內(nèi)容后笤虫,走到
Response Filter
(過(guò)濾模塊)時(shí),可能會(huì)對(duì)響應(yīng)內(nèi)容做處理,如gzip
操作進(jìn)行壓縮琼蚯,生成日志和返回?cái)?shù)據(jù)給請(qǐng)求用戶(hù)