最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx Location指令URI匹配規(guī)則詳解小結(jié)

 更新時(shí)間:2019年04月12日 14:57:47   作者:xyang0917  
這篇文章主要介紹了Nginx Location指令URI匹配規(guī)則詳解小結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1、介紹

location指令是http模塊當(dāng)中最核心的一項(xiàng)配置,根據(jù)預(yù)先定義的URL匹配規(guī)則來接收用戶發(fā)送的請(qǐng)求,根據(jù)匹配結(jié)果,將請(qǐng)求轉(zhuǎn)發(fā)到后臺(tái)服務(wù)器、非法的請(qǐng)求直接拒絕并返回403、404、500錯(cuò)誤處理等。

2、location指令語法

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

3、URI匹配模式

location指令分為兩種匹配模式:
1> 普通字符串匹配:以=開頭或開頭無引導(dǎo)字符(~)的規(guī)則
2> 正則匹配:以~或~*開頭表示正則匹配,~*表示正則不區(qū)分大小寫

4、location URI匹配規(guī)則

當(dāng)nginx收到一個(gè)請(qǐng)求后,會(huì)截取請(qǐng)求的URI部份,去搜索所有l(wèi)ocation指令中定義的URI匹配模式。在server模塊中可以定義多個(gè)location指令來匹配不同的url請(qǐng)求,多個(gè)不同location配置的URI匹配模式,總體的匹配原則是:先匹配普通字符串模式,再匹配正則模式。只識(shí)別URI部份,例如請(qǐng)求為:/test/abc/user.do?name=xxxx

一個(gè)請(qǐng)求過來后,Nginx匹配這個(gè)請(qǐng)求的流程如下:

1> 先查找是否有=開頭的精確匹配,如:location = /test/abc/user.do { … }

2> 再查找普通匹配,以 最大前綴 為原則,如有以下兩個(gè)location,則會(huì)匹配后一項(xiàng)
* location /test/ { … }
* location /test/abc { … }

3> 匹配到一個(gè)普通格式后,搜索并未結(jié)束,而是暫存當(dāng)前匹配的結(jié)果,并繼續(xù)搜索正則匹配模式

4> 所有正則匹配模式location中找到第一個(gè)匹配項(xiàng)后,就以此項(xiàng)為最終匹配結(jié)果
所以正則匹配項(xiàng)匹配規(guī)則,受定義的前后順序影響,但普通匹配模式不會(huì)

5> 如果未找到正則匹配項(xiàng),則以3中緩存的結(jié)果為最終匹配結(jié)果
6> 如果一個(gè)匹配都沒搜索到,則返回404

5、精確匹配與模糊匹配差別
location =/ { … } 與 location / { … } 的差別:
* 前一個(gè)是精確匹配,只響應(yīng)/請(qǐng)求,所有/xxx或/xxx/xxxx類的請(qǐng)求都不會(huì)以前綴的形式匹配到它
* 后一個(gè)是只要以 / 為前綴的請(qǐng)求都會(huì)被匹配到。如:/abc , /test/abc, /test/abc/aaaa

6、正則與非正則匹配

1> location ~ /test/.+.jsp$ { … } :正則匹配,支持標(biāo)準(zhǔn)的正則表達(dá)式語法。
2> location ^~ / { … } : ^~意思是關(guān)閉正則匹配,當(dāng)搜索到這個(gè)普通匹配模式后,將不再繼續(xù)搜索正則匹配模式。

...
http {
  ...
  server {
    listen    80;
    server_name localhost;

    location / {
      root  html;
      index index.html index.htm;
      # deny all; 拒絕請(qǐng)求,返回403
      # allow all; 允許請(qǐng)求
    }

    location /abc {
      deny all;
    }

    location ~ /.+\.jsp$ {
      proxy_pass http://location:9090;
    }

    # 匹配所有/test路徑下的jsp文件
    location ~ /test/.+\.jsp$ {
      proxy_pass http://localhost:8080;
    }

    # 定義各類錯(cuò)誤頁
    error_page 404 /404.html

    error_page  500 502 503 504 /50x.html;
    location = /50x.html {
      root  html;
    }

    # @類似于變量定義
    # error_page 403 http://blog.csdn.net; #這種定義不允許,需求利用@定義臨時(shí)變量來實(shí)現(xiàn)
    error_page 403 @page403;
    location @page403 {
      proxy_pass http://blog.csdn.net;
    } 
  }
}

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx限流配置詳解

    Nginx限流配置詳解

    限流是服務(wù)降級(jí)的一種方式,通過限制系統(tǒng)的輸入和輸出流量以達(dá)到保護(hù)系統(tǒng)的目的,本文主要介紹了Nginx限流配置詳解,感興趣的可以了解一下
    2023-11-11
  • filebeat同時(shí)收集錯(cuò)誤日志與普通日志并存詳解

    filebeat同時(shí)收集錯(cuò)誤日志與普通日志并存詳解

    這篇文章主要為大家介紹了filebeat同時(shí)收集錯(cuò)誤日志與普通日志并存詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn)

    Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn)

    這篇文章主要介紹了Nginx代理proxy pass配置去除前綴的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 使用nginx進(jìn)行負(fù)載均衡的搭建全過程

    使用nginx進(jìn)行負(fù)載均衡的搭建全過程

    負(fù)載均衡用于從“upstream”模塊定義的后端服務(wù)器列表中選取一臺(tái)服務(wù)器接受用戶的請(qǐng)求,下面這篇文章主要給大家介紹了關(guān)于使用nginx進(jìn)行負(fù)載均衡的搭建全過程,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Nginx優(yōu)化設(shè)計(jì)方案小結(jié)

    Nginx優(yōu)化設(shè)計(jì)方案小結(jié)

    本文主要介紹了Nginx優(yōu)化設(shè)計(jì)方案小結(jié),幫助大家在nginx的使用和優(yōu)化中提供一個(gè)參考的方向,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • 針對(duì)OpenSSL安全漏洞調(diào)整Nginx服務(wù)器的方法

    針對(duì)OpenSSL安全漏洞調(diào)整Nginx服務(wù)器的方法

    這篇文章主要介紹了針對(duì)OpenSSL漏洞調(diào)整Nginx服務(wù)器的方法,2014年爆出的SSL安全漏洞震驚了全世界,需要的朋友可以參考下
    2015-06-06
  • Nginx?中的地址重寫功能(使用方法)

    Nginx?中的地址重寫功能(使用方法)

    Nginx?地址重寫(rewrite)是?Nginx?服務(wù)器中一個(gè)非常實(shí)用的功能,它可以幫助我們實(shí)現(xiàn)?URL?的重定向、隱藏真實(shí)文件路徑、優(yōu)化網(wǎng)站結(jié)構(gòu)等,本文將詳細(xì)介紹?Nginx?地址重寫的相關(guān)知識(shí)和使用方法,感興趣的朋友一起看看吧
    2024-01-01
  • 解決nginx服務(wù)器上發(fā)布的新版本代碼總需要清除瀏覽器緩存問題

    解決nginx服務(wù)器上發(fā)布的新版本代碼總需要清除瀏覽器緩存問題

    這篇文章主要介紹了解決nginx服務(wù)器上發(fā)布的新版本代碼總需要清除瀏覽器緩存問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Nginx顯示500錯(cuò)誤的原因以及解決方法

    Nginx顯示500錯(cuò)誤的原因以及解決方法

    nginx出現(xiàn)500錯(cuò)誤,不會(huì)顯示具體錯(cuò)誤信息,要到日志文件里面去看,下面這篇文章主要給大家介紹了關(guān)于Nginx顯示500錯(cuò)誤的原因以及解決方法的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 關(guān)于nginx proxy_set部分常見配置

    關(guān)于nginx proxy_set部分常見配置

    這篇文章主要介紹了關(guān)于nginx proxy_set部分常見配置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05

最新評(píng)論

郎溪县| 民勤县| 会同县| 蕲春县| 江城| 浏阳市| 平罗县| 布尔津县| 天峨县| 威信县| 长治市| 辽宁省| 灌阳县| 古田县| 佛冈县| 吉首市| 分宜县| 新民市| 永寿县| 从江县| 六枝特区| 米脂县| 略阳县| 浮梁县| 左云县| 永平县| 长泰县| 托克逊县| 洛隆县| 溧水县| 阿坝县| 鄂托克前旗| 新源县| 招远市| 兰州市| 文成县| 远安县| 大兴区| 林甸县| 龙南县| 黔江区|