欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

OpenResty--------核心執(zhí)行階段篇-創(chuàng)新互聯(lián)

前言

前兩篇分別介紹了OpenResty核心概念和,優(yōu)勢與架構(gòu)等信息,進(jìn)行本篇之前建議至少觀看一遍。

為阜城等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及阜城網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、阜城網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
  • OpenResty--------企業(yè)級理論實(shí)踐篇
  • OpenResty--------企業(yè)級入門實(shí)踐篇

背景

之前篇章介紹了OpenResty是基于Nginx為基礎(chǔ)核心的開發(fā)平臺,
本篇將繼續(xù)介紹基礎(chǔ)平臺(Nginx)的主要特性。

特性

執(zhí)行階段

OpenResty將應(yīng)用分為4個大階段,11個小階段,如下圖所示。

  • 初始化階段: master進(jìn)程啟動預(yù)加載/生成worker進(jìn)程預(yù)加載
  • 轉(zhuǎn)發(fā)/訪問階段:url轉(zhuǎn)發(fā),權(quán)限判斷
  • 內(nèi)容處理/生成階段: 內(nèi)容生成
  • 日志階段: 日志記錄

OpenResty--------核心執(zhí)行階段篇

OpenResty--------核心執(zhí)行階段篇

開發(fā)中常用的7階段
  • set_by_lua*: 流程分支處理判斷變量初始化
  • rewrite_by_lua*: 轉(zhuǎn)發(fā)、重定向、緩存等功能(例如特定請求代理到外網(wǎng))
  • access_by_lua*: IP 準(zhǔn)入、接口權(quán)限等情況集中處理(例如配合 iptable 完成簡單防火墻)
  • content_by_lua*: 內(nèi)容生成
  • header_filter_by_lua*: 響應(yīng)頭部過濾處理(例如添加頭部信息)
  • body_filter_by_lua*: 響應(yīng)體過濾處理(例如完成應(yīng)答內(nèi)容統(tǒng)一成大寫)
  • log_by_lua*: 會話完成后本地異步完成日志記錄(日志可以記錄在本地,還可以同步到其他機(jī)器)

測試[常用的7階段]

環(huán)境

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
[root@localhost ~]# uname -r
3.10.0-693.el7.x86_64

OpenResty版本

[root@localhost ~]# /usr/local/openresty/bin/openresty -v
nginx version: openresty/1.13.6.2

創(chuàng)建測試項目目錄

[root@localhost ~]# mkdir -vp openresty-phase-test/{conf,logs}
mkdir: created directory ‘openresty-phase-test’
mkdir: created directory ‘openresty-phase-test/conf’
mkdir: created directory ‘openresty-phase-test/logs’
編寫配置文件

通過ngx.log輸出錯誤級別日志至文件中

[root@localhost ~]# cat openresty-phase-test/conf/nginx.conf 
worker_processes 1; # 設(shè)置worker數(shù)量
error_log logs/error.log; # 指定錯誤日志文件路徑
events {
    worker_connections 1024; # 單個worker進(jìn)程大允許同時建立外部連接的數(shù)量
}

http {
    server {
        listen 9999; # 設(shè)置監(jiān)聽端口, 注意系統(tǒng)其它服務(wù)是否已占用該端口

        location / {
            set_by_lua_block $a {
                ngx.log(ngx.ERR, "my is set_by_lua_block phase")
            }

            rewrite_by_lua_block {
                ngx.log(ngx.ERR, "my is rewrite_by_lua_block phase")
            }

            access_by_lua_block {
                ngx.log(ngx.ERR, "my is access_by_lua_block phase")
            }

            content_by_lua_block {
                ngx.log(ngx.ERR, "my is content_by_lua_block phase")
            }

            header_filter_by_lua_block {
                ngx.log(ngx.ERR, "my is header_filter_by_lua_block phase")
            }

            body_filter_by_lua_block {
                ngx.log(ngx.ERR, "my is body_filter_by_lua_block phase")
            }

            log_by_lua_block {
                ngx.log(ngx.ERR, "my is log_by_lua_block phase")
            }
        }  
    }
}

通過openresty運(yùn)行應(yīng)用

[root@localhost ~]# /usr/local/openresty/bin/openresty -p openresty-phase-test

查看錯誤日志文件內(nèi)容

[root@localhost ~]# cat openresty-phase-test/logs/error.log 
[root@localhost ~]#

此時錯誤日志文件內(nèi)容為空

通過curl工具發(fā)起測試請求[本地,端口為配置文件中的9999]

[root@localhost ~]# curl 127.0.0.1:9999

查看錯誤日志文件內(nèi)容

2019/08/02 05:34:22 [error] 1092#0: *1 [lua] set_by_lua:2: my is set_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] rewrite_by_lua(nginx.conf:18):2: my is rewrite_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] access_by_lua(nginx.conf:22):2: my is access_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] content_by_lua(nginx.conf:27):2: my is content_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] header_filter_by_lua:2: my is header_filter_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] body_filter_by_lua:2: my is body_filter_by_lua_block phase, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"
2019/08/02 05:34:22 [error] 1092#0: *1 [lua] log_by_lua(nginx.conf:39):2: my is log_by_lua_block phase while logging request, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", host: "127.0.0.1:9999"

可以看到安排階段順序進(jìn)行輸出

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站標(biāo)題:OpenResty--------核心執(zhí)行階段篇-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://aaarwkj.com/article10/cojhdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)云服務(wù)器、做網(wǎng)站App開發(fā)、網(wǎng)站內(nèi)鏈定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
亚洲黄色暴力一区视频| 亚洲国产一区二区三区三州| 熟女肥臀一区二区三区| 人妻少妇久久中文字幕久久| 人妻少妇中文字幕一区| 日本视频免费一区二区| 丁香六月色婷婷亚洲激情| 少妇内射呻吟中文字幕视频| 欧美经典三级一区二区三区| 日本日本熟妇在线视频| 在线不卡日本v二区到六区| 成人性生活黄色三级视频| 91精品国产在线观看| 高h视频在线播放观看| av电影在线中文字幕 | 国产姐弟操大率悠荡笕| 日韩成人午夜视频在线| 97全国免费观看视频| 自拍偷拍亚洲精品偷一| 成人午夜激情在线免费观看| 91啪在线观看91色| 欧美日韩一级性生活片| 久草视频亚洲免费在线| 亚洲社区一区二区三区四区| 国产亚洲精品视频免费| 久久精品国产91麻豆| 日韩人妻熟妇中文字幕| 日本精品视频一区二区三区| 国产精品成人大片在线播放| 69久久精品费精品国产| 成人午夜激情在线免费观看| 国产一区二区伦理视频| 青青草最新网址在线观看视频| 五月婷婷六月丁香俺来也| 日本一区二区在线观看视频| 国产成人免费自拍一区| 国产一区二区精品不卡| 夫妻性生活免费看视频| 九九热这里只有免费视频| 久久人妻蜜桃一区二区三区| av中文字幕在线激情|