Nginx配置引數中文詳細說明

2021-10-23 09:26:48 字數 3346 閱讀 4405

nginx的配置檔案nginx.conf配置詳解如下: 

#user  nobody; #定義nginx執行的使用者和使用者組

worker_processes 1;#程序數 根據硬體調整,通常等於cpu數量或者2倍於cpu。

#error_log logs/error.log info;#全域性錯誤日誌 日誌級別[debug | info | notice |warn |error]

#pid logs/nginx.pid; #pid檔案

#worker_rlimit_nofile 204800;指定程序可以開啟的最大描述符:數目。這個指令是指當乙個nginx程序開啟的最多檔案描述符數目,理論值應該是最多開啟檔案數(ulimit -n)與nginx程序數相除,但是nginx分配請求並不是那麼均勻,所以最好與ulimit -n 的值保持一致。

events

#設定http伺服器,利用它的反向**功能提供負載均衡支援

# nginx的upstream目前支援4種方式的分配

# 1、輪詢(預設):每個請求按時間順序逐一分配到不同的後端伺服器,如果後端伺服器down掉,能自動剔除。

# 2、weight:指定輪詢機率,weight和訪問比率成正比,用於後端伺服器效能不均的情況。

# 例如:

# upstream bakend

## 2、ip_hash:每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問乙個後端伺服器,可以解決session的問題。

# 例如:

# upstream bakend

## 3、fair(第三方):按後端伺服器的響應時間來分配請求,響應時間短的優先分配。

# upstream backend

## 4、url_hash(第三方):按訪問url的hash結果來分配請求,使每個url定向到同乙個後端伺服器,後端伺服器為快取時比較有效。

# 例:在upstream中加入hash語句,server語句中不能寫入weight等其他的引數,hash_method是使用的hash演算法

# upstream backend

##配置虛擬機器

server

#keepalive_requests 120; #單連線請求上限次數。

} #設定檢視nginx狀態的位址

location /nginxstatus

#禁止訪問.ht***檔案

location ~ /\.ht

} server

# 配置位址攔截**,解決跨域驗證問題

location /oauth/

# 快取時間設定

# js和css快取時間設定

location ~ .*\.(js|css)?$

# 日誌格式設定

# 定義本虛擬主機的訪問日誌

access_log /var/log/nginx/access.log access;

# 設定檢視nginx狀態的位址.stubstatus模組能夠獲取nginx自上次啟動以來的工作狀態,此模組非核心模組,需要在nginx編譯安裝時手工指定才能使用

location /nginxstatus

}}注釋:變數

ngx_http_core_module模組支援內建變數,他們的名字和apache的內建變數是一致的。

首先是說明客戶請求title中的行,例如$http_user_agent,$http_cookie等等。

此外還有其它的一些變數

$args此變數與請求行中的引數相等

$content_length等於請求行的「content_length」的值。

$content_type等同與請求頭部的」content_type」的值

$document_root等同於當前請求的root指令指定的值

$document_uri與$uri一樣

$host與請求頭部中「host」行指定的值或是request到達的server的名字(沒有host行)一樣

$limit_rate允許限制的連線速率

$request_method等同於request的method,通常是「get」或「post」

$remote_addr客戶端ip

$remote_port客戶端port

$remote_user等同於使用者名稱,由ngx_http_auth_basic_module認證

$request_filename當前請求的檔案的路徑名,由root或alias和uri request組合而成

$request_body_file

$request_uri含有引數的完整的初始uri

$query_string與$args一樣

$sheeme http模式(http,https)盡在要求是評估例如

rewrite ^(.+)$ $sheme: redirect;

$server_protocol等同於request的協議,使用「http/或「http/

$server_addr request到達的server的ip,一般獲得此變數的值的目的是進行系統呼叫。為了避免系統呼叫,有必要在listen指令中指明ip,並使用bind引數。

$server_name請求到達的伺服器名

$server_port請求到達的伺服器的埠號

$uri等同於當前request中的uri,可不同於初始值,例如內部重定向時或使用index

nginx配置詳細說明

定義nginx執行的使用者和使用者組 user www www nginx程序數,建議設定為等於cpu總核心數。worker processes 8 全域性錯誤日誌定義型別,debug info notice warn error crit error log var log nginx error...

nginx配置詳細說明

執行使用者 user nobody pid檔案 pid logs nginx.pid worker程序數,通常設定等同於cpu數量,auto為自動檢測 worker processes auto worker程序開啟最大檔案數,可cpu 10000設定 worker rlimit nofile 10...

nginx引數的詳細說明

開啟程序數 cpu數 worker processes 1 錯誤日誌儲存位置 error log logs error.log error log logs error.log notice error log logs error.log info 程序號儲存檔案 pid logs nginx.p...