基本配置說明
#定義nginx執行的使用者和使用者組
user www-data www-data;
#nginx程序數,建議設定為等於cpu總核心數。
worker_processes 2;
#全域性錯誤日誌定義型別,[ debug | info | notice | warn | error | crit ]
error_log /var/log/nginx/error.log info;
#程序檔案
pid /var/run/nginx.pid;
#乙個nginx程序開啟的最多檔案描述符數目,理論值應該是最多開啟檔案數(系統的值ulimit -n)與nginx程序數相除,但是nginx分配請求並不均勻,所以建議與ulimit -n的值保持一致。
worker_rlimit_nofile 65535;
#工作模式與連線數上限
events
http塊配置http
#虛擬主機設定
server
#日誌格式設定
#定義本虛擬主機的訪問日誌
access_log /var/log/nginx/test.log access;
#設定檢視nginx狀態的位址
location /nginxstatus
}}
location詳解型別
先匹配普通,再匹配正則;正則會覆蓋普通
執行順序:
普通location
最大字首匹配;
前面若指定了^~,則普通location一旦匹配上,就不需要繼續正則匹配
制訂了=嚴格匹配也不要繼續正則匹配
正則location
順序匹配,且只要匹配到第乙個就停止後面的匹配
例項
location =/
location ~ /images/abc/
執行順序
rewrite功能
#語法
rewrite [regex] [replacement] [flag]
rewrite 規則
flag標誌位
tips:
last一般寫在server和if中,而break一般使用在location中
last不終止重寫後的url匹配,即新的url會再從server走一遍匹配流程,而break終止重寫後的匹配
break和last都能組織繼續執行後面的rewrite指令
if指定與全域性變數
#語法
#1.當表示式只是乙個變數時,如果值為空或任何以0開頭的字串都會當做false
#2.直接比較變數和內容時,使用=或!=
#3.~正規表示式匹配,~*不區分大小寫的匹配,!~區分大小寫的不匹配
if(condition)
-f和!-f用來判斷是否存在檔案
-d和!-d用來判斷是否存在目錄
-e和!-e用來判斷是否存在檔案或目錄
-x和!-x用來判斷檔案是否可執行
可用於if判斷的全域性變數:
常用正則
rewrite例項
http
# 注意不能在上面這條規則後面加上「last」引數,否則下面的set指令不會執行
set $image_file $3;
set $image_type $4;
}location /data
location = /image404.html
}
對形如/images/ef/uh7b3/test.png的請求,重寫到/data?file=test.png,於是匹配到location /data,先看/data/images/test.png檔案存不存在,如果存在則正常響應,如果不存在則重寫try_files到新的image404 location,直接返回404狀態碼。參考文獻
nginx的基本知識
1 什麼是ngnix?nginx是一款輕量級的web 伺服器 反向 伺服器及電子郵件 imap pop3 伺服器,在bsd like 協議下發行 其特點是占有記憶體少,併發能力強,事實上nginx的併發能力確實在同型別的網頁伺服器中表現較好 2 nginx的優點 1 適用於高併發 2 可以做負載均衡...
nginx基本知識彙總
nginx的常用功能 http 反向 負載均衡,web快取 nginx常用模組 main 全域性設定 server 主機設定 upstream 負載均衡伺服器設定 和 location url匹配特定位置的設定 nginx負載均衡策略 輪詢 權重 ip hash ip繫結 fair 按後端伺服器響應...
Nginx基本知識,nginx安裝使用方法
nginx 是一款高效能的web伺服器軟體.具有極高的併發效能 利用nginx與tomcat組合使用,搭建反向 集群 nginx 反向 集群可以解決 的高併發問題 1 安裝 yum安裝 安裝yum y install nginx 啟動 停止 重啟 開機自啟 systemctl start stop ...