nginx配置—之location模式匹配
阿新 • • 發佈:2018-06-08
jpeg ack fetch 定義 正則表達式 con 搜索 其他 error
1、location正則
~ 表示一個正則匹配,區分大小寫 ~* 表示一個正則匹配,不區分大小寫 ^~ 表示普通字符匹配,一般用來匹配目錄 = 表示普通字符精確匹配 @ 定義一個自命名的location,用來在內部重定向,例如 error_page, try_files
2、location匹配的優先級
(1)location匹配的優先級與location在配置文件中的順序無關
(2)精確匹配( = ),首先處理精確匹配,如果匹配上,就停止搜索其他匹配
(3)普通字符匹配( ^~ ),越精確匹配,優先級越高,如果匹配上,停止搜索匹配
(4)正則表達式匹配,匹配定義的內容
(5)如果第4條規則產生匹配的話,就使用該結果,否則,使用第3條規則的結果
例1:基本匹配
location = / { # 只匹配 “/” [ configuration A ] } location / { # 匹配以 “/”開頭的請求,即匹配所有 # 但精確匹配或正則匹配會優先匹配 [ configuration B ] } location ^~ /images/ { # 匹配以 /images/ 開頭的請求,並停止其他 location匹配 [ configuration C ] } location ~* .(gif|jpg|jpeg)$ { # 匹配以 gif, jpg, 或者 jpeg結尾的請求 [ configuration D ] }/ 符合 A /documents/document.html 符合B /images/1.gif 符合C /documents/1.jpg 符合D
例2:@location
error_page 404 = @fetch; location @fetch( proxy_pass http://fetch; )
參考文章: http://www.nginx.cn/115.html
nginx配置—之location模式匹配