nginx使用小記

2021-09-08 18:32:28 字數 3358 閱讀 9210

中文wiki社群:

一 . nginx安裝

通過訊號對 nginx 進行控制

nginx 支援下表中的訊號:

killall -s hup nginx

二  nginx 配置

1. 監控配置

location /nginx_status

頁面結果解釋:

active connections: 291

server accepts handled requests

16630948 16630948 31070465

reading: 6 writing: 179 waiting: 106

active connections -- 對後端發起的活動連線數

server accepts handled requests -- nginx 總共處理了 16630948 個連線, 成功建立 16630948 次握手 (證明中間沒有失敗的), 總共處理了 31070465 個請求 (平均每次握手處理了 1.8個資料請求) 

reading -- nginx 讀取到客戶端的header資訊數 

writing -- nginx 返回給客戶端的header資訊數 

waiting -- 開啟 keep-alive 的情況下,這個值等於 active - (reading + writing),意思就是nginx說已經處理完正在等候下一次請求指令的駐留連線

2. 頁面快取配置  memcachedmodule

server

location = /fallback

3. 頁面配置ip訪問列表  

location /

4. 配置頁面訪問控制

location  /               auth_basic_user_file  conf/htpasswd;

htpasswd格式為 使用者名稱:密碼。你可以使用來自 apache 的 htpasswd 工具來建立密碼檔案。

5. 限制每個ip的併發數  httplimit_zonemodule

limit_zone   one  $binary_remote_addr  10m;

server

}定義乙個叫「one」的記錄區,總容量為 10m,以變數 $binary_remote_addr 作為會話的判斷基準(即乙個位址乙個會話)。 限制 /download/ 目錄下,乙個會話只能進行乙個連線。 

簡單點,就是限制 /download/ 目錄下,乙個ip只能發起乙個連線,多過乙個,一律503

6. **模組   httpproxymodule

location /

配置項介紹:

daemon on | off   預設值: on  

可以在開發時開啟,但必須在真實環境中設定為off

debug_points [stop | abort]  預設值: none 

可以在debugger上停止nginx應用

error_log file [ debug | info | notice | warn | error | crit ]      預設值: $/logs/error.log

include vhosts/*.conf;    預設值: none 

如果配置檔案很長,你可以在任意地方使用include指令實現配置檔案的包含。*.conf匹配所有以.conf結尾的檔案

lock_file  /var/log/lock_file;

nginx採用以非同步互斥進行訪問控制

master_process on | off     預設值: on 

和dameon on 都是在開發時使用

user user [group] 

指定nginx worker程序執行使用者,預設是nobody帳號。

worker_processes number 預設值: 1 

配置工作程序。max_clients = worker_processes * worker_connections

worker_priority [-]number 

設定工作程序的優先順序

worker_cpu_affinity 0001 0010 0100 1000;

繫結worker進行到四個cpu

worker_rlimit_core size 

指定每個程序的檔案限制

access_log path [format [buffer=size]] | off    預設值: access_log log/access.log combined 

指令 access_log 指派路徑、格式和快取大小。引數 "off" 將清除當前級別的所有 access_log 指令。如果未指定格式,則使用預置的 "combined" 格式。快取不能大於能寫入磁碟的檔案的最大大小。在 freebsd 3.0-6.0 ,快取大小無此限制。

log_format name format [format ...]  預設值: log_format combined "..." 

expires [time|epoch|max|off] 預設值: expires off 

使用本指令可以控制http應答中的「expires」和「cache-control」的頭標,(起到控制頁面快取的作用)。 

可以在time值中使用正數或負數。「expires」頭標的值將通過當前系統時間加上您設定的 time 值來獲得。 

epoch 指定「expires」的值為 1 january, 1970, 00:00:01 gmt。 

max 指定「expires」的值為 31 december 2037 23:59:59 gmt,「cache-control」的值為10年。 

「cache-control」頭標的值由您指定的時間來決定: 

負數:cache-control: no-cache 

正數或零:cache-control: max-age = #, # 為您指定時間的秒數。 

"off" 表示不修改「expires」和「cache-control」的值

nginx使用小記

中文wiki社群 一 nginx安裝 通過訊號對 nginx 進行控制 nginx 支援下表中的訊號 killall s hup nginx 二 nginx 配置 1.監控配置 location nginx status 頁面結果解釋 active connections 291 server ac...

oracle rownum使用小記

對於 oracle 的 rownum 問題,很多資料都說不支援 between.and,只能用以上符號 並非說用 gt between.and 時會提示sql語法錯誤,而是經常是查不出一條記錄來,還會出現似乎是莫名其妙的結果來,其實您只要理解好了這個 rownum 偽列的意義就不應該感到驚奇,同樣是...

libtiff使用小記

這兩天就跟libtiff庫卯上了,總會遇到奇怪的問題。現在問題或直接或曲折的解決了,一一記錄下來。問題一 tiffsetdirectory函式的使用。目的 交叉讀取tiff中兩頁的每一行,假設第一頁tif為tif 0,第二頁tif為tif 1。我的目的就是先讀tif 0的第i行,然後讀tif 1的第...