nginx web)應用實踐

2021-09-20 14:49:58 字數 2966 閱讀 2079

錯誤日誌功能:nginx錯誤日誌一般分為 debug |info|notice |warn |error|crit|alert|emerg 這幾個級別。

一般 執行 warn |error|crit 這2個級別。預設開啟 crit 級別。建議開啟error。

這裡不要把級別調的太低。會產生大量的日誌。消耗磁碟i/o。更多的檢視訪問日誌。

可以配置在 main  ,http , server , location 這幾個區域快中。

在主配置檔案的main區域 新增一行  error_log logs/error.log error;

location作用:根據使用者請求的url來執行不同的應用。根據使用者請求**的url進行匹配。匹配成功,程序相應的操作

匹配的兩種特殊字元"~"或"~*" "~"區分大小寫 "~*" 不區分大小寫."!"表示取反

"^~"作用:在進行常規匹配後不做正規表示式的檢查。

使用者請求的url說明及順序

使用者請求的url

設定的狀態碼 說明

這裡省略所有的字首:

當為空或/時

location = / =

精確匹配,優先順序最高

/images/1.gif

location ^~ /images/

匹配常規字元,不做正則匹配^~作用:優先匹配路徑,而不會匹配1.gif

這裡是正則匹配。匹配了

常規匹配,如果有正則則優先匹配正則。匹配了/document

/index.html

或是任何不匹配location模組的字串

location / /

預設匹配,所有location都匹配不上後的,預設匹配

nginx rewrite

主要功能實現url位址重寫。(需要pcre支援)

語法指令:   rewrite regex  replacement [flag];

應用位置: server  location  if

rewrite 是實現url重寫的關鍵指令,根據regex(正規表示式)的部分的內容,重定向到replacement部分,結尾是flag標記。

regex

常用正規表示式 字元

描述 \

將後面接著的字元標記為乙個特殊字元或乙個原以字元或乙個向後引用  。例如」\n」匹配乙個換行符 ^

匹配輸入字元的起始位置 $

匹配輸入字串的結束位置 *

匹配0個或多個字元。等價於 (貪婪模式) +

匹配1個或多個字元。等價於(貪婪模式) ?

匹配0個或1個,如果根貪婪模式一起,會限制貪婪模式。

例如「0000」,「0+?」則匹配「0」。而「0+」則匹配「0000」 .

匹配除」\n」外的任意單個字元,如果要匹配」\n」要使用[.\n]

(pattern)

匹配括號內的pattern,可以在後面獲取對應的匹配。常用$0..$9屬性獲取小括號中的匹配內容,要匹配圓括號字元需要,\(  \)

rewrite

最後一項引數flag標記的說明

flag

標記符號 說明

last

瀏覽器位址列不變,伺服器的路徑改變

本條規則匹配完成後,向下匹配新的location url規則

break

本條規則匹配完成後,不再匹配後面的任何規則

redirect

302臨時重定向,瀏覽器位址列會顯示跳轉後的url位址

permanent

301永久重定向,瀏覽器位址列後顯示跳轉後的url位址

案例實現301跳轉

server

server

}測試結果:

實現不同網域名稱的url跳**

要求**訪問 時,跳轉至/blog/blog.com

在 conf/extra/blog.conf 新增:

測試結果:

要求**訪問:訪問/blog時,跳轉至

在 conf/extra/www.conf 新增

rewrite ^(.*)/blog break;

測試結果:

Nginx Web服務應用

nginx下面用原始碼安裝nginx tar zxf nginx 1.12.0.tar.gz cd nginx 1.12.0 cd mnt nginx 1.12.0 vim src core nginx.h 隱藏nginx使用的版本號 yum install pcre devel openssl d...

構建Nginx Web應用

1 通過實訓平台進入到作業系統介面,在 後輸入mkdir sample命令,然後按enter鍵,建立sample目錄。示例 如下 root mkdir sample 2 在 後面輸入cd sample 命令,然後按enter鍵,進入sample目錄,接著在 後輸入mkdir nginx命令,然後按e...

nginx web快取配置

1.場景 使用proxy cache快取web靜態內容檔案和通過rewrite偽靜態化後的html整頁面快取。動態內容通過ajax動態獲取,也保持內容一致。2.nginx 配置 a.新增快取檔案儲存路徑 vi etc nginx nginx.conf 注 proxy temp path和proxy ...