您好,登錄后才能下訂單哦!
基礎知識
location的匹配順序是“先匹配正則,在匹配普通”。
location的匹配順序其實是“先匹配普通,在匹配正則”。造成誤解的原因是:正則匹配會覆蓋普通匹配
Nginx location 配置語法
1. location [ = | ~ | ~* | ^~ ] uri { ... }
2. location @name { ... }
location 配置可以有兩種配置方法
1.前綴 + uri(字符串/正則表達式)
2.@ + name
前綴含義
= :精確匹配(必須全部相等)
~ :大小寫敏感
~* :忽略大小寫
^~ :只需匹配uri部分
@ :內部服務跳轉
Location 基礎知識
1.location 是在 server 塊中配置。
2.可以根據不同的 URI 使用不同的配置(location 中配置),來處理不同的請求。
3.location 是有順序的,會被第一個匹配的location 處理。
Location 配置demo
1.=,精確匹配
location = / { #規則 } # 則匹配到 `http://www.example.com/` 這種請求。
2.~,大小寫敏感
location ~ /Example/ { #規則 } #請求示例 #http://www.example.com/Example/ [成功] #http://www.example.com/example/ [失敗]
3.~*,大小寫忽略
location ~* /Example/ { #規則 } # 則會忽略 uri 部分的大小寫 #http://www.example.com/Example/ [成功] #http://www.example.com/example/ [成功]
4.^~,只匹配以 uri 開頭
location ^~ /img/ { #規則 } #以 /img/ 開頭的請求,都會匹配上 #http://www.example.com/img/a.jpg [成功] #http://www.example.com/img/b.mp4 [成功]
5.@,nginx內部跳轉
location /img/ { error_page 404 @img_err; } location @img_err { # 規則 } #以 /img/ 開頭的請求,如果鏈接的狀態為 404。則會匹配到 @img_err 這條規則上。
總結
Nginx 中的 location 并沒有想象中的很難懂,不必害怕。多找資料看看,多嘗試。你就會有收獲。
參考
好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。