国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

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

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

服務器之家 - 服務器技術 - Nginx - nginx配置location方法總結

nginx配置location方法總結

2020-01-03 14:59Hello-YOYO Nginx

這篇文章主要介紹了nginx配置location方法總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

location匹配順序

1."="前綴指令匹配,如果匹配成功,則停止其他匹配
2.普通字符串指令匹配,順序是從長到短,匹配成功的location如果使用^~,則停止其他匹配(正則匹配)
3.正則表達式指令匹配,按照配置文件里的順序,成功就停止其他匹配
4.如果第三步中有匹配成功,則使用該結果,否則使用第二步結果

注意點

1.匹配的順序是先匹配普通字符串,然后再匹配正則表達式。另外普通字符串匹配順序是根據配置中字符長度從長到短,也就是說使用普通字符串配置的location順序是無關緊要的,反正最后nginx會根據配置的長短來進行匹配,但是需要注意的是正則表達式按照配置文件里的順序測試。找到第一個比配的正則表達式將停止搜索。

2.一般情況下,匹配成功了普通字符串location后還會進行正則表達式location匹配。有兩種方法改變這種行為,其一就是使用“=”前綴,這時執行的是嚴格匹配,并且匹配成功后立即停止其他匹配,同時處理這個請求;另外一種就是使用“^~”前綴,如果把這個前綴用于一個常規字符串那么告訴nginx 如果路徑匹配那么不測試正則表達式。

匹配模式及順序

location = /uri    =開頭表示精確匹配,只有完全匹配上才能生效。

location ^~ /uri   ^~ 開頭對URL路徑進行前綴匹配,并且在正則之前。

location ~ pattern  ~開頭表示區分大小寫的正則匹配。

location ~* pattern  ~*開頭表示不區分大小寫的正則匹配。

location /uri     不帶任何修飾符,也表示前綴匹配,但是在正則匹配之后。

location /      通用匹配,任何未匹配到其它location的請求都會匹配到,相當于switch中的default。 

實驗案例

測試"^~"和"~",nginx配置如下。瀏覽器輸入http://localhost/helloworld/test,返回601。如將#1注釋,#2打開,瀏覽器輸入http://localhost/helloworld/test,返回603。注:#1和#2不能同時打開,如同時打開,啟動nginx會報nginx: [emerg] duplicate location "/helloworld"...,因為這兩個都是普通字符串。

?
1
2
3
4
5
6
7
8
9
10
11
location ^~ /helloworld #1
 return 601;
}
  
#location /helloworld {  #2
# return 602;
#}
 
location ~ /helloworld {
 return 603;
}

測試普通字符串的長短(普通字符串的匹配與順序無關,與長短有關)。瀏覽器輸入http://localhost/helloworld/test/a.html,返回601。瀏覽器輸入http://localhost/helloworld/a.html,返回602。

?
1
2
3
4
5
6
7
location /helloworld/test/ #1
 return 601;
}
  
location /helloworld/ {    #2
 return 602;
}

測試正則表達式的順序(正則匹配與順序相關)。瀏覽器輸入http://localhost/helloworld/test/a.html,返回602;將#2和#3調換順序,瀏覽器輸入http://localhost/helloworld/test/a.html,返回603

?
1
2
3
4
5
6
7
8
9
10
11
location /helloworld/test/ #1
 return 601;
}
 
location ~ /helloworld {   #2
 return 602;
}
  
location ~ /helloworld/test #3
 return 603;
}

所以實際使用中,個人覺得至少有三個匹配規則定義,如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#直接匹配網站根,通過域名訪問網站首頁比較頻繁,使用這個會加速處理,官網如是說。
#這里是直接轉發給后端應用服務器了,也可以是一個靜態首頁
# 第一個必選規則
location = / {
 proxy_pass http://tomcat:8080/index
}
 
# 第二個必選規則是處理靜態文件請求,這是nginx作為http服務器的強項
# 有兩種配置模式,目錄匹配或后綴匹配,任選其一或搭配使用
location ^~ /static/ {
 root /webroot/static/;
}
location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
 root /webroot/res/;
}
 
#第三個規則就是通用規則,用來轉發動態請求到后端應用服務器
#非靜態文件請求就默認是動態請求,自己根據實際把握
#畢竟目前的一些框架的流行,帶.php,.jsp后綴的情況很少了
location / {
 proxy_pass http://tomcat:8080/
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://www.cnblogs.com/coder-yoyo/p/6346595.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 18视频在线观看网站 | 久久国产高清 | 日韩免费av | 久久国产欧美日韩精品 | 欧美 日韩 国产 在线 | 狠狠艹| 中文字幕 在线观看 | 国产色| 北条麻妃在线一区二区 | 丝袜+亚洲+另类+欧美+变态 | 精品视频国产 | 精品无码三级在线观看视频 | 欧美日韩一区二区三区在线观看 | 国产成人av在线播放 | 国产目拍亚洲精品99久久精品 | 久久久久网站 | 欧美日韩一级电影 | 国产一区二区欧美 | 久久国产精品一区 | 99久色 | 日日操操 | 日韩中文字幕在线观看视频 | 女男羞羞视频网站免费 | 欧美久 | 国产麻豆一区二区三区 | 黄色在线免费 | 成人动慢 | 欧美中文字幕一区二区三区 | av在线一区二区三区 | av在线精品 | 最近中文字幕 | 特黄一级 | 亚洲视频在线观看 | 激情欧美一区二区三区 | 国产精品亚洲一区二区三区在线 | 久久久久99精品 | 亚洲国产精品一区二区三区 | 久久男人天堂 | 中文字幕在线日韩 | 中文字幕在线资源 | 欧美日韩一级电影 |