nginx總結(jié)

  1. 在 Nginx 配置中祟剔,變量只能存放一種類型的值限次,因為也只存在一種類型的值芒涡,那就是字符串。
  2. 變量插值,nginx配置支持费尽,但ngx_lua不支持
  3. set 指令(以及前面提到的 geo 指令)不僅有賦值的功能赠群,它還有創(chuàng)建 Nginx 變量的副作用,即當(dāng)作為賦值對象的變量尚不存在時依啰,它會自動創(chuàng)建該變量乎串。
  4. Nginx 變量的創(chuàng)建和賦值操作發(fā)生在全然不同的時間階段店枣。Nginx 變量的創(chuàng)建只能發(fā)生在 Nginx 配置加載的時候速警,或者說 Nginx 啟動的時候;而賦值操作則只會發(fā)生在請求實際處理的時候鸯两。這意味著不創(chuàng)建而直接使用變量會導(dǎo)致啟動失敗闷旧,同時也意味著我們無法在請求處理時動態(tài)地創(chuàng)建新的 Nginx 變量。
  5. Nginx 變量名的可見范圍雖然是整個配置钧唐,但每個請求都有所有變量的獨(dú)立副本忙灼,或者說都有各變量用來存放值的容器的獨(dú)立副本,彼此互不干擾钝侠。比如前面我們請求了 /bar 接口后该园,$foo 變量被賦予了值 32,但它絲毫不會影響后續(xù)對 /foo 接口的請求所對應(yīng)的 $foo 值(它仍然是空的K汀)里初,因為各個請求都有自己獨(dú)立的 $foo 變量的副本。
  6. Nginx 變量值容器的生命期是與當(dāng)前正在處理的請求綁定的忽舟,而與 location 無關(guān)双妨。內(nèi)部請求改變了location,但未改變變量值容器叮阅,外部請求相當(dāng)于新的請求刁品,所以會變。
  7. “子請求”則是由 Nginx 正在處理的請求在 Nginx 內(nèi)部發(fā)起的一種級聯(lián)請求浩姥√羲妫“子請求”在外觀上很像 HTTP 請求,但實現(xiàn)上卻和 HTTP 協(xié)議乃至網(wǎng)絡(luò)通信一點兒關(guān)系都沒有勒叠。它是 Nginx 內(nèi)部的一種抽象調(diào)用兜挨,目的是為了方便用戶把“主請求”的任務(wù)分解為多個較小粒度的“內(nèi)部請求”,并發(fā)或串行地訪問多個 location 接口缴饭,然后由這些 location 接口通力協(xié)作暑劝,共同完成整個“主請求”。當(dāng)然颗搂,“子請求”的概念是相對的担猛,任何一個“子請求”也可以再發(fā)起更多的“子子請求”,甚至可以玩遞歸調(diào)用(即自己調(diào)用自己)。當(dāng)一個請求發(fā)起一個“子請求”的時候傅联,按照 Nginx 的術(shù)語先改,習(xí)慣把前者稱為后者的“父請求”(parent request)。
  8. 內(nèi)建變量 $arg_XXX 在請求 URL 參數(shù) XXX 并不存在時會返回特殊值“找不到”蒸走,但遺憾的是在 Nginx 原生配置語言(我們估且這么稱呼它)中是不能很方便地把它和空字符串區(qū)分開來的仇奶,ngx_lua可以,nil => missing “” =》“”
  9. Nginx 一般會在 content 階段安排三個這樣的靜態(tài)資源服務(wù)模塊(除非你的 Nginx 在構(gòu)造時顯式禁用了這三個模塊中的一個或者多個比驻,又或者啟用了這種類型的其他模塊)该溯。按照它們在 content 階段的運(yùn)行順序,依次是 ngx_index 模塊别惦, ngx_autoindex 模塊狈茉,以及 ngx_static 模塊。
  10. echo_exec 指令和 rewrite 指令可以發(fā)起“內(nèi)部跳轉(zhuǎn)”掸掸。這種跳轉(zhuǎn)會自動修改當(dāng)前請求的 URI氯庆,并且重新匹配與之對應(yīng)的 location 配置塊,再重新執(zhí)行 rewrite扰付、access堤撵、content 等處理階段。
  11. Nginx 處理請求的過程一共劃分為 11 個階段羽莺,按照執(zhí)行順序依次是 post-read实昨、server-rewrite、find-config禽翼、rewrite屠橄、post-rewrite、preaccess闰挡、access锐墙、post-access、try-files长酗、content 以及 log.
  12. “主請求”以及各個“子請求”都擁有不同的變量 $var 的值容器副本
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末溪北,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子夺脾,更是在濱河造成了極大的恐慌之拨,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件咧叭,死亡現(xiàn)場離奇詭異蚀乔,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)菲茬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門吉挣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來派撕,“玉大人,你說我怎么就攤上這事睬魂≈蘸穑” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵氯哮,是天一觀的道長际跪。 經(jīng)常有香客問我,道長喉钢,這世上最難降的妖魔是什么姆打? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮出牧,結(jié)果婚禮上穴肘,老公的妹妹穿的比我還像新娘。我一直安慰自己舔痕,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布豹缀。 她就那樣靜靜地躺著伯复,像睡著了一般。 火紅的嫁衣襯著肌膚如雪邢笙。 梳的紋絲不亂的頭發(fā)上啸如,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天,我揣著相機(jī)與錄音氮惯,去河邊找鬼叮雳。 笑死,一個胖子當(dāng)著我的面吹牛妇汗,可吹牛的內(nèi)容都是我干的帘不。 我是一名探鬼主播,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼杨箭,長吁一口氣:“原來是場噩夢啊……” “哼寞焙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起互婿,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤捣郊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后慈参,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呛牲,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年驮配,在試婚紗的時候發(fā)現(xiàn)自己被綠了娘扩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尊勿。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖畜侦,靈堂內(nèi)的尸體忽然破棺而出元扔,到底是詐尸還是另有隱情,我是刑警寧澤旋膳,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布澎语,位于F島的核電站,受9級特大地震影響验懊,放射性物質(zhì)發(fā)生泄漏擅羞。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一义图、第九天 我趴在偏房一處隱蔽的房頂上張望减俏。 院中可真熱鬧,春花似錦碱工、人聲如沸娃承。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽历筝。三九已至,卻和暖如春廊谓,著一層夾襖步出監(jiān)牢的瞬間梳猪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工蒸痹, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留春弥,地道東北人。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓叠荠,卻偏偏與公主長得像匿沛,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蝙叛,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容