Nginx配置段解析

2022-09-23 01:33:10 字數 2540 閱讀 2149

安裝方法:

rpm及原始碼安裝:

配置段:nginx:main配置段http {}

http配置:http core 配置乙個靜態web伺服器

配置框架:

http #類似於httpd中的,用於定義url與本地檔案系統的對映關係;

root "/path/to/somewhere";

} #每個server類似於httpd中的乙個

server

定義乙個虛擬主機;

server

location @name

功能:允許根據使用者請求的uri來匹配定義的各location,匹配到時,此請求將被相應的location塊中的配置所處理;

=: 精確匹配檢查;

~: 正規表示式模式匹配,區分字元大小寫;

~*:正規表示式模式 匹配,不區分字元大小寫;

^~:uri的前半部分匹配,不檢查正規表示式;

匹配優先順序:精確匹配(=)、^~、~和~*、由不帶符號的url進行左側匹配;

server ;

僅能用於location上下文;

location /status

應用環境:server,location

condition:

(1) 變數名:

變數值為空串,或者以「0」開始,則為false;其他的均為true;

(2) 以變數為運算元構成的比較表示式

可使用=,!=類似的比較操作符進行測試

(3) 正規表示式的模式匹配操作

~:區分大小寫的模式匹配檢查

~*:不區分大小寫的模式匹配檢查

!~和!~*: 對上面兩種測試取反

(4) 測試路徑為檔案可能性:-f,!-f

(5) 測試指定路徑為目錄的可能性:-d, !-d

(6) 測試檔案的存在性: -e, !-e

(7) 檢查檔案是否有執行許可權:-x,!-x

例如:if ($http_user_agent ~* msie) {

rewrite ^(.*)$ /msie/$1 break;

16、防盜煉

rewrite ^/ #(盜鏈提示)

17、定製訪問日誌格式

注意:此處可用變數為nginx各模組內建變數;

網路連線相關的配置:

1、keepalive_timeout time;

保持連線的超時時長,預設為75s;

2、keepalive_requests #;

在一次保持連線上允許承載最大資源請求數;

3、keepalive_disable [msie6|safari|none]

為指定型別的瀏覽器禁用長連線;

4、tcp_nodelay on|off

對長連線是否使用tcp_nodelay選項;

5、client_header_timeout time;

讀取http請求報文首部的超時時長;

6、client_body_timeout time;

讀取http請求報文body部分的超時時長;

7、send_timeout time;

傳送響應報文的超時時長;

Nginx 配置解析

執行使用者,預設即是nginx,可不設定 user nobody nginx程序,一般設定為和cpu核數一樣 worker processes 1 單個後台worker process程序的最大併發鏈結數 docker run itd restart unless stopped v etc loc...

Nginx配置解析

執行使用者,預設即是nginx,可不設定 user nobody nginx程序,一般設定為和cpu核數一樣 worker processes 1 單個後台worker process程序的最大併發鏈結數 docker run itd restart unless stopped v etc loc...

Nginx配置解析

nginx主配置檔案 etc nginx nginx.conf是乙個純文字型別的檔案,整個配置檔案是以區塊的形式組織,通常每乙個區塊以一對大括號 來表示開始與結束。如下為全域性main配置 root master conf cat nginx.conf user nobody worker proc...