Nginx 正則匹配

2022-01-30 04:29:48 字數 3005 閱讀 8363

目錄

~     區分大小寫(大小寫敏感)匹配成功 

~* 不區分大小寫匹配成功

!~ 區分大小寫匹配失敗

!~* 不區分大小寫匹配失敗

^ 以什麼開頭的匹配

$ 以什麼結尾的匹配

* 代表任意字元

expires      30d;
表示過期時間30天

location / 

}

禁止訪問chrome瀏覽器。

-f和!-f用來判斷是否存在檔案

-d和!-d用來判斷是否存在目錄

-e和!-e用來判斷是否存在檔案或目錄

-x和!-x用來判斷檔案是否可執行

location /
last一般寫在server和if中,而break一般使用在location中。

redirect : 返回302臨時重定向,位址列會顯示跳轉後的位址。

$args                                         請求中的引數,如www.abc.com/test/hello?a=1&b=2的$args就是a=1&b=2

$document_root nginx虛擬主機配置檔案中的root引數對應的值

$document_uri 當前請求中不包含指令的uri,如www.abc.com/test/hello?a=1&b=2的document_uri就是/test/hello,不包含後面的引數

$host 主機頭,也就是網域名稱

$http_user_agent 客戶端的詳細資訊,也就是瀏覽器的標識,用curl -a可以指定

$http_cookie 客戶端的cookie資訊

$limit_rate 如果nginx伺服器使用limit_rate配置了顯示網路速率,則會顯示,如果沒有設定,則顯示0

$remote_addr 客戶端的公網ip

$remote_port 客戶端的埠

$request_method 請求資源的方式,get/put/delete等

$request_filename 當前請求的資源檔案的路徑名稱,相當於是$document_root/$document_uri的組合

$request_uri 請求的鏈結,包括$document_uri和$args

$scheme 請求的協議,如ftp、http、https

$server_protocol 客戶端請求資源使用的協議的版本,如http/1.0,http/1.1,http/2.0等

$server_addr 伺服器ip位址

$server_name 伺服器的主機名

$server_port 伺服器的埠號

$uri 和$document_uri相同

$http_referer 客戶端請求時的referer,通俗講就是該請求是通過哪個鏈結跳過來的

常用:$http_referer

案例

. : 匹配除換行符以外的任意字元

? : 重複0次或1次

\d :匹配數字

^ : 匹配字串的開始

$ : 匹配字串的介紹

: 重複n次

[c] : 匹配單個字元c

[a-z] : 匹配a-z小寫字母的任意乙個

nginx正則匹配 全域性常量

1 nginx location 規則匹配 識別符號匹配後面跟乙個字串。匹配字串後將停止對後續的正規表示式進行匹配。如 location images 在匹配了 images 這個字串後就停止對後續的匹配 精準匹配,如 location 只會匹配urrl為 的請求 區分大小寫的匹配 不區分大小寫的匹...

Nginx配置檔案正則匹配符說明

配置檔案server location匹配 1 正規表示式匹配,其中 為區分大小寫匹配 為不區分大小寫匹配 和 分別為區分大小寫不匹配及不區分大小寫不匹配 支援客戶slb中http 重定向到https 1 客戶必須先建立https的 及 規則 2 客戶再建立http的 有跳轉選項 跳轉已建立的htt...

nginx匹配規則

nginx的location可以有以下幾個匹配 1.嚴格匹配這個查詢。如果找到,停止搜尋。2.匹配路徑的字首,如果找到,停止搜尋。3.為區分大小寫的正則匹配 4.為不區分大小寫匹配 波浪線表示執行乙個正則匹配,區分大小寫 表示執行乙個正則匹配,不區分大小寫 表示普通字元匹配,如果該選項匹配,只匹配該...