欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務器

服務器租用

Nginx與Lua的執行順序和步調說明

Nginx與Lua的執行順序和步調說明

一、Nginx執行步調

Nginx處理懲罰每一個用戶請求時,都是憑據若干個差異階段(phase)依次處理懲罰的,而不是按照設置文件上的順序。

Nginx處理懲罰請求的進程一共分別為11個階段,憑據執行順序依次是post-read、server-rewrite、find-config、rewrite、post-rewrite、 preaccess、access、post-access、try-files、content、log.

1、post-read
讀取請求內容階段,nginx讀取并理會完請求頭之后就當即開始運行;譬喻模塊 ngx_realip 就在 post-read
階段注冊了處理懲罰措施,它的成果是迫使 Nginx 認為當前請求的來歷地點是指定的某一個請求頭的值。

2、server-rewrite
server請求地點重寫階段;當ngx_rewrite模塊的set設置指令直接書寫在server設置塊中時,根基上都是運行在server-rewrite
階段

3、find-config
設置查找階段,這個階段并不支持Nginx模塊注冊處理懲罰措施,而是由Nginx焦點來完成當前請求與location設置塊之間的配對事情。

4、rewrite
location請求地點重寫階段,當ngx_rewrite指令用于location中,就是再這個階段運行的;別的ngx_set_misc(配置md5、encode_base64等)模塊的指令,尚有ngx_lua模塊的set_by_lua指令和rewrite_by_lua指令也在此階段。

5、post-rewrite
請求地點重寫提交階段,當nginx完成rewrite階段所要求的內部跳動彈作,假如rewrite階段有這個要求的話;

6、preaccess
會見權限查抄籌備階段,ngx_limit_req和ngx_limit_zone在這個階段運行,ngx_limit_req可以節制請求的會見頻率,ngx_limit_zone可以節制會見的并發度;

7、access
會見權限查抄階段,尺度模塊ngx_access、第三方模塊ngx_auth_request以及第三方模塊ngx_lua的access_by_lua指令就運行在這個階段。設置指令多是執行會見節制相關的任務,如查抄用戶的會見權限,查抄用戶的來歷IP是否正當;

8、post-access
會見權限查抄提交階段;主要用于共同access階段實現尺度ngx_http_core模塊提供的設置指令satisfy的成果。satisfy
all(與干系),satisfy any(或干系)

9、try-files
設置項try_files處理懲罰階段;專門用于實現尺度設置指令try_files的成果,假如前 N-1
個參數所對應的文件系統工具都不存在,try-files 階段就會當即提倡“內部跳轉”到最后一個參數(即第 N
個參數)所指定的URI.

10、content
內容發生階段,是所有請求處理懲罰階段中最為重要的階段,因為這個階段的指令凡是是用來生成HTTP響應內容并輸出 HTTP
響應的使命;

11、log
日志模塊處理懲罰階段;記錄日志

二、Nginx下Lua處理懲罰階段與利用范疇:
init_by_lua            http
set_by_lua             server, server if, location, location if
rewrite_by_lua         http, server, location, location if
access_by_lua          http, server, location, location if
content_by_lua         location, location if
header_filter_by_lua   http, server, location, location if
body_filter_by_lua     http, server, location, location if
log_by_lua             http, server, location, location if
timer

init_by_lua:
在nginx從頭加載設置文件時,運行內里lua劇本,常用于全局變量的申請。
譬喻lua_shared_dict共享內存的申請,只有當nginx重起后,共享內存數據才清空,這常用于統計。

set_by_lua:
配置一個變量,常用與計較一個邏輯,然后返回功效
該階段不能運行Output API、Control API、Subrequest API、Cosocket API

rewrite_by_lua:
在access階段前運行,主要用于rewrite

access_by_lua:
主要用于會見節制,能收集到大部門變量,雷同status需要在log階段才有。
這條指令運行于nginx access階段的末端,因此老是在 allow 和 deny 這樣的指令之后運行,固然它們同屬 access
階段。

content_by_lua:
階段是所有請求處理懲罰階段中最為重要的一個,運行在這個階段的設置指令一般都負擔著生成內容(content)并輸出HTTP響應。

header_filter_by_lua:
一般只用于配置Cookie和Headers等
該階段不能運行Output API、Control API、Subrequest API、Cosocket API

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務器租用 夢飛云服務器租用 版權所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 临汾市| 安化县| 桐庐县| 图木舒克市| 红河县| 牙克石市| 张家口市| 丹棱县| 方正县| 瑞昌市| 德钦县| 株洲市| 盐山县| 沐川县| 多伦县| 松潘县| 上林县| 兴和县| 台北县| 新民市| 东莞市| 庆城县| 博兴县| 昌平区| 葫芦岛市| 洪江市| 始兴县| 奎屯市| 玉田县| 鄂伦春自治旗| 宝应县| 本溪市| 辽宁省| 海城市| 山阴县| 镇巴县| 永州市| 陈巴尔虎旗| 闻喜县| 大方县| 安丘市|