溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

nginx location 配置 正則表達(dá)式實(shí)例詳解

發(fā)布時(shí)間:2020-09-06 13:05:32 來(lái)源:腳本之家 閱讀:759 作者:spongeboblz 欄目:服務(wù)器

1.location 介紹

•location 是在 server 塊中配置,用來(lái)通過(guò)匹配接收的uri來(lái)實(shí)現(xiàn)分類處理不同的請(qǐng)求,如反向代理,取靜態(tài)文件等
•location 在 server 塊中可以有多個(gè),且是有順序的,會(huì)被第一個(gè)匹配的 location 處理
•localtion 匹配功能只做匹配分發(fā)用,并不會(huì)改變uri的內(nèi)容或其他作用,我一開始理解的時(shí)候就混淆了一些概念,建議多做測(cè)試看實(shí)際效果

2.localtion 匹配規(guī)則

•location [ = | ~ | ~* | ^~ ] uri { … }
•location @name { … }

注1:規(guī)則不能混合使用

 注2:以下例子說(shuō)明都以該server為基礎(chǔ)

 server {
    listen    8861;
    server_name abc.com;
  }

2.1 “=” 精確匹配

•內(nèi)容要同表達(dá)式完全一致才匹配成功

 例:

location = / {
  .....
}
# 只匹配http://abc.com
# http://abc.com [匹配成功]
# http://abc.com/index [匹配失敗]

2.2 “~”,大小寫敏感

 例·:

location ~ /Example/ {
  .....
}
#http://abc.com/Example/ [匹配成功]
#http://abc.com/example/ [匹配失敗]

2.3.“~*”,大小寫忽略

 例:

location ~* /Example/ {
  .....
}
# 則會(huì)忽略 uri 部分的大小寫
#http://abc.com/test/Example/ [匹配成功]
#http://abc.com/example/ [匹配成功]

2.4.“^~”,只匹配以 uri 開頭

 例:

location ^~ /index/ {
  .....
}
#以 /img/ 開頭的請(qǐng)求,都會(huì)匹配上
#http://abc.com/index/index.page  [匹配成功]
#http://abc.com/error/error.page [匹配失敗]

2.5.“@”,nginx內(nèi)部跳轉(zhuǎn)

 例:

location /index/ {
  error_page 404 @index_error;
}
location @index_error {
  .....
}
#以 /index/ 開頭的請(qǐng)求,如果鏈接的狀態(tài)為 404。則會(huì)匹配到 @index_error 這條規(guī)則上。

2.6 不加任何規(guī)則

•不加任何規(guī)則則時(shí),默認(rèn)是大小寫敏感,前綴匹配,相當(dāng)于加了“~”與“^~”

•只有 / 表示匹配所有uri

location /index/ {
  ......
}
#http://abc.com/index  [匹配成功]
#http://abc.com/index/index.page  [匹配成功]
#http://abc.com/test/index  [匹配失敗]
#http://abc.com/Index  [匹配失敗]
# 匹配到所有uri
location / {
  ......
}

總結(jié)

以上所述是小編給大家介紹的nginx location 配置 正則表達(dá)式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI