91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Nginx軟件location目錄匹配詳解

馬哥Linux運(yùn)維 ? 來源:博客園 ? 作者:lvzhenjiang ? 2021-10-08 17:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Nginx作為一個(gè)輕量級的,高性能的web服務(wù)軟件,因其占有內(nèi)存少,并發(fā)能力強(qiáng)的特點(diǎn),而廣受歡迎和使用。國內(nèi)很多大型互聯(lián)網(wǎng)公司也對Nginx很是青睞。

像BAT(百度,阿里和騰訊),TMD(頭條,美團(tuán)和滴滴)等等。使用過Nginx的同學(xué)都知道,你只需要按需求準(zhǔn)確的更改好配置啟動(dòng),那么就可以優(yōu)雅的訪問它了。

所以說Nginx對配置文件的很是看中呢,這就要求我們更改配置文件時(shí)一定要再三確認(rèn),要不然可能因?yàn)槭韬龆l(fā)慘案呢?

真實(shí)案例,就因?yàn)樵谂渲脮r(shí),少些了一個(gè)字符“/”,就造成訪問不通報(bào)錯(cuò),因而接到投訴。那么是怎么引起的呢?原因就是:Nginx在配置proxy_pass代理轉(zhuǎn)接時(shí),少些“/”字符造成的。有同學(xué)就有疑問,加不加“/”,區(qū)別真的那么大嗎?我們帶著這個(gè)疑問,來探究下這個(gè)問題。

location目錄匹配詳解

nginx每個(gè)location都是一個(gè)匹配目錄,nginx的策略是:訪問請求來時(shí),會(huì)對訪問地址進(jìn)行解析,從上到下逐個(gè)匹配,匹配上就執(zhí)行對應(yīng)location大括號中的策略,并根據(jù)策略對請求作出相應(yīng)。依訪問地址:http://www.wandouduoduo.com/wddd/index.html為例,nginx配置如下:

location /wddd/ { proxy_connect_timeout 18000; ##修改成半個(gè)小時(shí) proxy_send_timeout 18000; proxy_read_timeout 18000; proxy_pass http://127.0.0.1:8080; }

那訪問時(shí)就會(huì)匹配這個(gè)location,從而把請求代理轉(zhuǎn)發(fā)到本機(jī)的8080Tomcat服務(wù)中,Tomcat相應(yīng)后,信息原路返回??偨Y(jié):location如果沒有“/”時(shí),請求就可以模糊匹配以字符串開頭的所有字符串,而有“/”時(shí),只能精確匹配字符本身。

下面舉個(gè)例子說明:配置location /wandou可以匹配/wandoudouduo請求,也可以匹配/wandou*/duoduo等等,只要以wandou開頭的目錄都可以匹配到。而location /wandou/必須精確匹配/wandou/這個(gè)目錄的請求,不能匹配/wandouduoduo/或/wandou*/duoduo等請求。

proxy_pass有無“/”的四種區(qū)別探究

訪問地址都是以:http://www.wandouduoduo.com/wddd/index.html 為例。請求都匹配目錄/wddd/

第一種:加“/”

location /wddd/ { proxy_pass http://127.0.0.1:8080/; }

測試結(jié)果,請求被代理跳轉(zhuǎn)到:http://127.0.0.1:8080/index.html

第二種: 不加“/”

location /wddd/ { proxy_pass http://127.0.0.1:8080; }

測試結(jié)果,請求被代理跳轉(zhuǎn)到:http://127.0.0.1:8080/wddd/index.html

第三種: 增加目錄加“/”

location /wddd/ { proxy_pass http://127.0.0.1:8080/sun/; }

測試結(jié)果,請求被代理跳轉(zhuǎn)到:http://127.0.0.1:8080/sun/index.html

第四種:增加目錄不加“/”

location /wddd/ { proxy_pass http://127.0.0.1:8080/sun; }

測試結(jié)果,請求被代理跳轉(zhuǎn)到:http://127.0.0.1:8080/sunindex.html

總結(jié)

location目錄后加“/”,只能匹配目錄,不加“/”不僅可以匹配目錄還對目錄進(jìn)行模糊匹配。而proxy_pass無論加不加“/”,代理跳轉(zhuǎn)地址都直接拼接。為了加深大家印象可以用下面的配置實(shí)驗(yàn)測試下:

server { listen 80; server_name localhost; # http://localhost/wddd01/xxx -》 http://localhost:8080/wddd01/xxx location /wddd01/ { proxy_pass http://localhost:8080; } # http://localhost/wddd02/xxx -》 http://localhost:8080/xxx location /wddd02/ { proxy_pass http://localhost:8080/;

} # http://localhost/wddd03/xxx -》 http://localhost:8080/wddd03*/xxx location /wddd03 { proxy_pass http://localhost:8080;

} # http://localhost/wddd04/xxx -》 http://localhost:8080//xxx,請注意這里的雙斜線,好好分析一下。 location /wddd04 { proxy_pass http://localhost:8080/;

} # http://localhost/wddd05/xxx -》 http://localhost:8080/hahaxxx,請注意這里的haha和xxx之間沒有斜杠,分析一下原因。 location /wddd05/ { proxy_pass http://localhost:8080/haha;

} # http://localhost/api6/xxx -》 http://localhost:8080/haha/xxx location /wddd06/ { proxy_pass http://localhost:8080/haha/;

} # http://localhost/wddd07/xxx -》 http://localhost:8080/haha/xxx location /wddd07 { proxy_pass http://localhost:8080/haha; }

# http://localhost/wddd08/xxx -》 http://localhost:8080/haha//xxx,請注意這里的雙斜杠。 location /wddd08 { proxy_pass http://localhost:8080/haha/; } }

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1304

    瀏覽量

    74473
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5332

    瀏覽量

    91586
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    186

    瀏覽量

    13117

原文標(biāo)題:總結(jié)

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    termux wifi 另一臺手機(jī) 對話框`405 Not Allowed`錯(cuò)誤

    錯(cuò)誤原因 405 Not Allowed 表示 Nginx 服務(wù)不支持 POST 請求方法,當(dāng)前配置僅能處理 GET 請求,且未配置參數(shù)解析邏輯。 快速解決(兩種方案任選) 方案1:改用 GET
    發(fā)表于 12-18 08:35

    Nginx常見故障案例總結(jié)

    在互聯(lián)網(wǎng)公司的運(yùn)維生涯中,Nginx故障可以說是最常見也最讓人頭疼的問題之一。從簡單的配置錯(cuò)誤到復(fù)雜的性能瓶頸,從偶發(fā)的502到持續(xù)的高延遲,每一個(gè)故障背后都有其獨(dú)特的原因和解決方案。
    的頭像 發(fā)表于 09-18 14:51 ?1291次閱讀

    如何基于Nginx構(gòu)建微服務(wù)網(wǎng)關(guān)

    今天,我將分享我們團(tuán)隊(duì)如何基于Nginx構(gòu)建了一個(gè)日均處理10億+請求的微服務(wù)網(wǎng)關(guān),以及踩過的那些坑。這套方案已經(jīng)穩(wěn)定運(yùn)行2年+,經(jīng)歷過多次大促考驗(yàn)。
    的頭像 發(fā)表于 09-02 16:29 ?826次閱讀

    Nginx高并發(fā)優(yōu)化方案

    作為一名在生產(chǎn)環(huán)境中摸爬滾打多年的運(yùn)維工程師,我見過太多因?yàn)?b class='flag-5'>Nginx配置不當(dāng)導(dǎo)致的性能瓶頸。今天分享一套完整的Nginx高并發(fā)優(yōu)化方案,幫助你的系統(tǒng)從10萬QPS突破到百萬級別。
    的頭像 發(fā)表于 08-13 15:51 ?1010次閱讀

    Nginx在企業(yè)環(huán)境中的調(diào)優(yōu)策略

    Nginx作為現(xiàn)代互聯(lián)網(wǎng)架構(gòu)中最重要的Web服務(wù)器和反向代理服務(wù)器,其性能調(diào)優(yōu)對企業(yè)級應(yīng)用的穩(wěn)定性和效率至關(guān)重要。本指南將從運(yùn)維實(shí)踐角度出發(fā),詳細(xì)介紹Nginx在企業(yè)環(huán)境中的各種調(diào)優(yōu)策略和最佳實(shí)踐。
    的頭像 發(fā)表于 07-14 11:13 ?635次閱讀

    Nginx和Apache的差異

    Nginx是一個(gè) 輕量級/高性能 的反向代理Web服務(wù)器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 協(xié)議。
    的頭像 發(fā)表于 07-09 09:45 ?682次閱讀

    一文詳解Nginx負(fù)載均衡

    Nginx作為負(fù)載均衡器,通過將請求分發(fā)到多個(gè)后端服務(wù)器,以提高性能、可靠性和擴(kuò)展性。支持多種負(fù)載均衡算法,如輪詢、最小連接數(shù)、IP哈希等,可以根據(jù)需求選擇適合的算法。
    的頭像 發(fā)表于 06-25 14:51 ?1088次閱讀
    一文<b class='flag-5'>詳解</b><b class='flag-5'>Nginx</b>負(fù)載均衡

    Nginx配置終極指南

    Nginx 是開源、高性能、高可靠的 Web 和反向代理服務(wù)器,而且支持熱部署,幾乎可以做到 7 * 24 小時(shí)不間斷運(yùn)行,即使運(yùn)行幾個(gè)月也不需要重新啟動(dòng),還能在不間斷服務(wù)的情況下對軟件版本進(jìn)行熱
    的頭像 發(fā)表于 06-18 15:56 ?1031次閱讀
    <b class='flag-5'>Nginx</b>配置終極指南

    云原生環(huán)境里Nginx的故障排查思路

    本文聚焦于云原生環(huán)境下Nginx的故障排查思路。隨著云原生技術(shù)的廣泛應(yīng)用,Nginx作為常用的高性能Web服務(wù)器和反向代理服務(wù)器,在容器化和編排的環(huán)境中面臨著新的故障場景和挑戰(zhàn)。
    的頭像 發(fā)表于 06-17 13:53 ?973次閱讀
    云原生環(huán)境里<b class='flag-5'>Nginx</b>的故障排查思路

    Nginx性能優(yōu)化終極指南

    而worker 進(jìn)程數(shù)默認(rèn)為 1 。單進(jìn)程最大連接數(shù)為1024。如下圖(打開Nginx目錄下的/conf/nginx.conf 文檔),現(xiàn)在我們來對這兩個(gè)數(shù)值進(jìn)行調(diào)優(yōu)
    的頭像 發(fā)表于 06-16 13:44 ?1271次閱讀
    <b class='flag-5'>Nginx</b>性能優(yōu)化終極指南

    Nginx基礎(chǔ)安裝與配置教程

    說起Web服務(wù)器,大家第一反應(yīng)可能是Apache,但作為一個(gè)在運(yùn)維路上摸爬滾打的技術(shù)人,我必須要為Nginx正名一下!這個(gè)由俄羅斯大神Igor Sysoev開發(fā)的輕量級HTTP服務(wù)器,真的是我見過最"能打"的Web服務(wù)器之一。
    的頭像 發(fā)表于 06-13 16:13 ?939次閱讀

    Nginx核心功能深度解析

    Nginx核心功能深度解析
    的頭像 發(fā)表于 05-09 10:50 ?883次閱讀

    Nginx緩存配置詳解

    Nginx 是一個(gè)功能強(qiáng)大的 Web 服務(wù)器和反向代理服務(wù)器,它可以用于實(shí)現(xiàn)靜態(tài)內(nèi)容的緩存,緩存可以分為客戶端緩存和服務(wù)端緩存。
    的頭像 發(fā)表于 05-07 14:03 ?1251次閱讀
    <b class='flag-5'>Nginx</b>緩存配置<b class='flag-5'>詳解</b>

    Nginx實(shí)戰(zhàn)全攻略

    Nginx 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3 代理服務(wù)器。它以其高并發(fā)處理能力、穩(wěn)定性、豐富的功能模塊和低內(nèi)存消耗而聞名。
    的頭像 發(fā)表于 03-31 10:44 ?4879次閱讀
    <b class='flag-5'>Nginx</b>實(shí)戰(zhàn)全攻略

    Nginx服務(wù)優(yōu)化教程

    隱藏Nginx版本號,避免安全漏洞泄漏:修改配置文件法;修改源碼法
    的頭像 發(fā)表于 03-12 15:57 ?990次閱讀
    <b class='flag-5'>Nginx</b>服務(wù)優(yōu)化教程