echo-nginx-moduleNginx 模塊
echo-nginx-module 是一個(gè) Nginx 模塊,提供直接在 Nginx 配置使用包括 "echo", "sleep", "time" 等指令。
該模塊包裝了許多Nginx內(nèi)部API,用于流輸入和輸出,并行/順序子請求,計(jì)時(shí)器和睡眠以及各種元數(shù)據(jù)訪問。
基本上,它提供了各種實(shí)用程序,它們通過簡單地模擬不同種類的偽造的子請求位置來幫助測試和調(diào)試其他模塊。
人們還會(huì)發(fā)現(xiàn)它在需要
- 直接從內(nèi)存中提供靜態(tài)內(nèi)容(從Nginx配置文件中加載)。
- 用自定義的頁眉和頁腳包裝上游響應(yīng)(有點(diǎn)像加法模塊,但內(nèi)容直接從配置文件和Nginx變量中讀取)。
- 在單個(gè)主請求中(使用echo_location及其好友)將各種“ Nginx位置”(即子請求)的內(nèi)容合并在一起。
這是一個(gè)特殊的雙角色模塊,可以根據(jù)需要延遲用作內(nèi)容處理程序或?qū)⑵渥陨碜詾檩敵鲞^濾器。默認(rèn)情況下,該模塊不執(zhí)行任何操作。
從技術(shù)上講,該模塊還演示了以下對模塊編寫者可能有用的技術(shù):
- 直接從內(nèi)容處理程序發(fā)出并行子請求。
- 通過沿子請求鏈傳遞連續(xù)性,可以直接從內(nèi)容處理程序發(fā)出鏈接的子請求。
- 使用所有HTTP 1.1方法甚至是可選的偽造的HTTP請求正文來發(fā)出子請求。
- 使用自定義事件和計(jì)時(shí)器直接從內(nèi)容處理程序與Nginx事件模型進(jìn)行交互,并在必要時(shí)恢復(fù)內(nèi)容處理程序。
- 雙角色模塊,可以(懶惰地)用作內(nèi)容處理程序或輸出過濾器,或兩者兼而有之。
- Nginx配置文件變量的創(chuàng)建和內(nèi)插。
- 使用output_chain,flush及其朋友進(jìn)行流輸出控制。
- 從內(nèi)容處理程序中讀取客戶端請求主體,并在完成后(異步)返回到內(nèi)容處理程序。
- 使用基于Perl的聲明式測試套件來驅(qū)動(dòng)Nginx C模塊的開發(fā)。
評論
圖片
表情
