一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - Nginx - Nginx服務器的location指令匹配規則詳解

Nginx服務器的location指令匹配規則詳解

2019-11-04 14:33sookk Nginx

這篇文章主要介紹了Nginx服務器的location指令匹配規則,文中介紹了一種動靜態地址分離的方法示例,需要的朋友可以參考下

Nginx 中的 Location 指令 是NginxHttpCoreModule中重要指令。Location 指令,是用來為匹配的 URI 進行配置,URI 即語法中的”/uri/”,可以是字符串或正則表達式。但如果要使用正則表達式,則必須指定前綴。
nginx location語法
基本語法:location [=|~|~*|^~] /uri/ { … }

  • = 嚴格匹配。如果這個查詢匹配,那么將停止搜索并立即處理此請求。
  • ~ 為區分大小寫匹配(可用正則表達式)
  • ~* 為不區分大小寫匹配(可用正則表達式)
  • !~和!~*分別為區分大小寫不匹配及不區分大小寫不匹配
  • ^~ 如果把這個前綴用于一個常規字符串,那么告訴nginx 如果路徑匹配那么不測試正則表達式。

Location語法語法:location [=|~|~*|^~] /uri/ { … }

注:
1、~   為區分大小寫匹配
2、~* 為不區分大小寫匹配
3、!~和!~*分別為區分大小寫不匹配及不區分大小寫不匹配

例子:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
location = / {
# matches the query / only.
# 只匹配 / 查詢。
[ configuration A ]
}
location / {
# matches any query, since all queries begin with /, but regular
# expressions and any longer conventional blocks will be
# matched first.
# 匹配任何查詢,因為所有請求都已 / 開頭。但是正則表達式規則和長的塊規則將被優先和查詢匹配。
[ configuration B ]
}
location ^~ /images/ {
# matches any query beginning with /images/ and halts searching,
# so regular expressions will not be checked.
# 匹配任何已 /images/ 開頭的任何查詢并且停止搜索。任何正則表達式將不會被測試。
[ configuration C ]
}
location ~* .(gif|jpg|jpeg)$ {
# matches any request ending in gif, jpg, or jpeg. However, all
# requests to the /images/ directory will be handled by
# Configuration C.
# 匹配任何已 gif、jpg 或 jpeg 結尾的請求。然而所有 /images/ 目錄的請求將使用 Configuration C。
[ configuration D ]
}

我的添加模式,動靜分離

?
1
2
3
4
5
6
7
8
   location ^~ /(images|scripts|styles|upload)/ {
  root  /www/abc.com/www/htdocs;
  expires 30d;
}
  location ~*\.(gif|jpg|jpeg|png|css|ico|html)$ {
  root  /www/abc.com/www/htdocs;
  expires 30d;
}

如果要定義多個location,則可以有2種方式:
 
使用/ :location / { client_max_body_size 200m; proxy_connect_timeout 30; proxy_set_header Host $http_host; proxy_set_header x-forwarded-for $remote_addr; proxy_pass http://127.0.0.1:8008; } location /tmp/{ root /; internal; } 采用這種方式,/tmp可以放在/的下面,因為“/是匹配任何查詢,但是正則表達式規則和長的塊規則將被優先和查詢匹配”
 
使用~ /* : location ~ /tmp/ { root /tmp; internal; } location ~ /* { client_max_body_size 20m; proxy_connect_timeout 30; fastcgi_pass fpass; include fastcgi_params; } 采用這種方式,/tmp則必須放在~ /*這個前面,因為~是正則匹配的,正則匹配是有順序的,只要匹配上就不會再往下匹配了。除非在conf中有定義=或者^~,也就是說=和^~的優先級最高,如果匹配上,就不會再去匹配其它的規則了。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲精品国产成人99久久 | 91麻豆精品国产自产在线观看 | 亚洲国产情侣一区二区三区 | 共妻高h | 国产区一二三四区2021 | 免费看男人狂躁女人 | 日本高清视频在线免费观看 | 四虎影视库永久在线地址 | 91你懂的 | 免费特黄一级欧美大片 | 亚洲美日韩 | 视频一区二区国产无限在线观看 | 欧美色精品天天在线观看视频 | 国内精品久久久久影院中国 | 色人阁导航 | 欧美理论片手机在线观看片免费 | 金牛网155755水心论坛黄大父母 | 日本成年片高清在线观看 | 暖暖的免费观看高清视频韩国 | 日韩激情视频在线观看 | 国产精品第2页 | 翁熄性放纵交换01 | 91私密保健女子养生spa | 国产精品露脸国语对白手机视频 | 天天做天天爱天天爽综合区 | 2019自拍偷拍视频 | 厨房play黄瓜进入 | 国产一级真人毛爱做毛片 | 国产精品欧美日韩一区二区 | 午夜特级毛片 | 日本道高清| 免费视频 | 日本不卡视频免费的 | 亚洲午夜精品久久久久 | 天天干天天爽天天操 | 亚洲国产在线综合018 | 国产精品免费久久久久影院 | 日产欧产va1 | 91蜜桃| 亚洲福利视频在线观看 | zozo日本另类极品 |