您好,登錄后才能下訂單哦!
這篇文章主要講解了Nginx正則表達式的使用方法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。
前言
最近幫客戶配置服務器,經常修改Nginx的配置文件,頻繁的用到正式匹配規則,這里整理了一些常用的正則參數及規則,以備查詢。
Nginx配置中Location的語法規則 location [ = | ~ | ~* | ^~ | !~ | !~* ] /uri/{ … }
匹配順序
多個location配置的情況下匹配順序為:
首先匹配 =
其次匹配 ^~
其次是按文件中順序的正則匹配
最后是交給 / 通用匹配
當有匹配成功時候,停止匹配,按當前匹配規則處理請求。
. 匹配除換行符以外的任意字符
\w 匹配字母或數字或下劃線或漢字
\s 匹配任意的空白符
\d 匹配數字
\b 匹配單詞的開始或結束
^ 匹配字符串的開始
$ 匹配字符串的結束* 重復零次或更多次
+ 重復一次或更多次
? 重復零次或一次
{n} 重復n次
{n,} 重復n次或更多次
{n,m} 重復n到m次
*? 重復任意次,但盡可能少重復
+? 重復1次或更多次,但盡可能少重復
?? 重復0次或1次,但盡可能少重復
{n,m}? 重復n到m次,但盡可能少重復
{n,}? 重復n次以上,但盡可能少重復\W 匹配任意不是字母,數字,下劃線,漢字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非數字的字符
\B 匹配不是單詞開頭或結束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou這幾個字母以外的任意字符
常用的規則
精確匹配
location = / { proxy_pass http://127.0.0.1:9090/ }
將所有請求直接轉發給服務器的9090端口。
處理靜態文件
#目錄匹配 location ^~ /static/ { root /webroot/static/; } #后綴匹配 location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ { root /webroot/res/; }
轉發動態請求到后端應用服務器
#將/account/開始的請求轉發給Account服務器 location /account/ { proxy_pass http://127.0.0.1:8080/ } #將/order/開始的請求轉發給Order服務器 location /order/ { proxy_pass http://127.0.0.1:9090/ }
rewrite指令
看完上述內容,是不是對Nginx正則表達式的使用方法有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。