Nginx location規則匹配

2022-02-12 18:05:25 字數 1784 閱讀 8445

^~    識別符號匹配後面跟-乙個字串。匹配字串後將停止對後續的正規表示式進行匹配,如location ^~ /images/ , 在匹配了/images/這個字串後就停止對後續的正則匹配

=   精準匹配,如location=/,只會匹配url為/的請求。

~   區分大小寫的匹配。

~*    不區分大小寫的匹配。

!~     對區分大小寫的匹配取非。

!~*    對不區分大小寫的匹配取非。

/     通用匹配,如果沒有其它匹配,任何請求都會被匹配到

匹配順序優先順序:

(location =)> (location 完整路徑)> (location ^~ 路徑) > (location ~,~*正則順序) >(location 部分起始位置) > (/)

2、正規表示式

*:重複前面的字元0次或多次

?:重複前面的字元0次或1次

+:重複前面的字元1次或多次

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

(a|b):匹配a或b

^:以...開頭

$:以...結尾

:重複前面的字元n次

:重複前面的字元n次或更多次

:重複前面的字元n-m次

*?:重複前面的字元0次或多次,但盡可能少重複

+?:重複前面的字元1次或多次,但盡可能少重複

??:重複前面的字元0次或1次,但盡可能少重複

?:重複前面的字元n-m次,但盡可能少重複

?:重複前面的字元n次以上,但盡可能少重複

3、正規表示式補充

\w:匹配任意不是字母,數字,下劃線,漢字的字元(特殊符號)

\s:匹配任意不是空白符的字元

\d:匹配任意非數字的字元

\b:匹配任意不是單詞開頭或結尾的位置

[a]:匹配單個字元a

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

[^a]:匹配除了a以外的任意字元

[^abc]:匹配除了abc這幾個字母以外的任意字元

4、nginx location應用規則

第一台虛擬機器確保安裝nginx

第二台虛擬機上安裝確保搭建好lamp

(1)在第二台虛擬機器上:[root@localhost ~]# rpm -q nfs-utils rpcbind      //檢視有沒有安裝nfs-utils rpcbind這兩個軟體包

[root@localhost ~]# mkdir /wwwroot         //建立乙個檔案

[root@localhost ~]# vim /etc/exports      //新增以下內容

/wwwroot 192.168.200.112  (ro) 

[root@localhost ~]# systemctl restart rpcbind

[root@localhost ~]# systemctl restart nfs

(2)[root@localhost ~]# cd /wwwroot/           //在裡面新增一張

rz(3)在第一台虛擬機器上:

[root@localhost ~]# cd /usr/local/nginx/html/images/          //檢視一下裡面有在第二台虛擬機器上新增的

[root@localhost html]# vim index.html          //新增以下內容(把加進去)

(4)在網頁上訪問:192.168.200.112

nginx location匹配規則

location匹配命令 波浪線表示執行乙個正則匹配,區分大小寫 表示執行乙個正則匹配,不區分大小寫 表示普通字元匹配,不使用正規表示式,如果該選項匹配,只匹配該選項,不匹配別的選項,一般用來匹配目錄 進行普通字元精確匹配 定義乙個命名的 location,使用在內部定向時,例如 error pag...

nginx location匹配規則

location匹配命令 波浪線表示執行乙個正則匹配,區分大小寫 表示執行乙個正則匹配,不區分大小寫 表示普通字元匹配,如果該選項匹配,只匹配該選項,不匹配別的選項,一般用來匹配目錄 進行普通字元精確匹配 定義乙個命名的 location,使用在內部定向時,例如 error page,try fil...

nginx location匹配規則

location匹配命令 波浪線表示執行乙個正則匹配,區分大小寫 表示執行乙個正則匹配,不區分大小寫 表示普通字元匹配,如果該選項匹配,只匹配該選項,不匹配別的選項,一般用來匹配目錄 進行普通字元精確匹配 定義乙個命名的 location,使用在內部定向時,例如 error page,try fil...