1. 程式人生 > >nginx 配置參數

nginx 配置參數

區分 location 優先級 max cycle 順序 ati dev backlog

系統內核參數配置

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1800

net.ipv4.ip_conntrack_max = 16777216 # 如果使用默認參數,容易出現網絡丟包

net.ipv4.netfilter.ip_conntrack_max = 16777216# 如果使用默認參數,容易出現網絡丟包

net.ipv4.tcp_max_syn_backlog = 65536

net.core.netdev_max_backlog = 32768

net.core.somaxconn = 32768

net.core.wmem_default = 8388608

net.core.rmem_default = 8388608

net.core.rmem_max = 16777216

net.core.wmem_max = 16777216

net.ipv4.tcp_timestamps = 0

net.ipv4.tcp_synack_retries = 2

net.ipv4.tcp_syn_retries =

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_mem = 94500000 915000000 927000000

net.ipv4.tcp_max_orphans = 3276800

net.ipv4.ip_local_port_range = 1024 65535


location的配置選項及說明

語法規則: location [=|~|~*|^~] /uri/ { … }

= 表示精確匹配,這個優先級也是最高的

^~ 表示uri以某個常規字符串開頭,理解為匹配 url路徑即可。nginx不對url做編碼,因此請求為/static/20%/aa,可以被規則^~ /static/ /aa匹配到(註意是空格)。

~ 表示區分大小寫的正則匹配

~* 表示不區分大小寫的正則匹配(和上面的唯一區別就是大小寫)

!~和!~*分別為區分大小寫不匹配及不區分大小寫不匹配的正則

/ 通用匹配,任何請求都會匹配到,默認匹配.

下面講講這些語法的一些規則和優先級

多個location配置的情況下匹配順序為(參考資料而來,還未實際驗證,試試就知道了,不必拘泥,僅供參考):

優先級=>^~>

首先匹配 =,其次匹配^~, 其次是按文件中順序的正則匹配,最後是交給 / 通用匹配。當有匹配成功時候,停止匹配,按當前匹配規則處理請求。 例子,有如下匹配規則:



nginx 配置參數