成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

nginx 的 default_server 定義及匹配規(guī)則

AnthonyHan / 1125人閱讀

摘要:的指令可以定義默認(rèn)的去處理一些沒有匹配到的請(qǐng)求,如果沒有顯式定義,則會(huì)選取第一個(gè)定義的作為。在了解到如上規(guī)則后,我們可以捕獲未做綁定的域名訪問或直接訪問,做重定向到頁面等處理。

nginx 的 default_server 指令可以定義默認(rèn)的 server 去處理一些沒有匹配到 server_name 的請(qǐng)求,如果沒有顯式定義,則會(huì)選取第一個(gè)定義的 server 作為 default_server。

在了解到如上規(guī)則后,我們可以捕獲未做綁定的域名訪問或直接IP訪問,做重定向到403頁面等處理。

1、nginx 隱式的 default server
http {
    # 如果沒有顯式聲明 default server 則第一個(gè) server 會(huì)被隱式的設(shè)為 default server
    server {
        listen 80;
        server_name _; # _ 并不是重點(diǎn) __ 也可以 ___也可以
        return 403; # 403 forbidden
    }
    
    server {
        listen 80;
        server_name www.a.com;
        ...
    }
    
    server {
        listen 80;
        server_name www.b.com;
        ...
    }
}

很多人復(fù)制粘貼廣泛傳播 server_name 要設(shè)為 "_",其實(shí)一毛錢的關(guān)系也沒有。"_" 只是作為一個(gè)和業(yè)務(wù)域名無關(guān)的請(qǐng)求回收服務(wù)而已,如果我們線上的業(yè)務(wù)都是明確的業(yè)務(wù)域名訪問,那泛解析造成的一些非業(yè)務(wù)域名或ip訪問都會(huì)被這個(gè) sever 回收處理。

在沒有顯式定義 default server 時(shí),nginx 會(huì)將配置的第一個(gè) server 作為 default server,即當(dāng)請(qǐng)求沒有匹配任何 server_name 時(shí),此 server 會(huì)處理此請(qǐng)求。所以,當(dāng)我們直接使用 ip 訪問時(shí)會(huì)被交給此處定義的第一個(gè) server 處理,403 forbidden。

2、顯示的定義一個(gè) default server
http {
    server {
        listen 80;
        server_name www.a.com;
        ...
    }
    
    server {
        listen 80;
        server_name www.b.com;
        ...
    }
    
    # 顯示的定義一個(gè) default server
    server {
        listen 80 default_server;
        server_name _;
        return 403; # 403 forbidden
    }
    
}

建議顯示指定 default server,因?yàn)槲覀冊(cè)谂渲锰摂M主機(jī)或多業(yè)務(wù)時(shí),會(huì)存有多個(gè) server 配置文件,如果使用隱式方式選取第一個(gè)被載入的 server 作為 default server 的話,我們還要時(shí)刻去確認(rèn)誰是被第一個(gè)載入的...制造風(fēng)險(xiǎn)...

3、直接指定server_name 為 ip(只能禁止ip訪問)
http {
    server {
        listen 80;
        server_name www.a.com;
        ...
    }
    
    server {
        listen 80;
        server_name www.b.com;
        ...
    }
    
    # 直接指定 ip server_name
    server {
        listen 80;
        server_name xxx.xxx.xxx.xxx;
        return 403; # 403 forbidden
    }
    
}

以上三種方式都可禁止 ip 直接訪問,且 1,2 同時(shí)可以禁止未綁定域名的訪問(比如你泛解析了主域名)。

小記:nginx 批量載入配置 conf 時(shí)會(huì)按 ascii 排序載入,這就會(huì)以 server_a.conf server_b.conf server_c.conf 的順序載入,如果沒有生命 default_server 的話,那 server_a 會(huì)作為默認(rèn)的 server 去處理 未綁定域名/ip 的請(qǐng)求。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/40007.html

相關(guān)文章

  • Nginx 配置文件備忘

    摘要:如對(duì)于請(qǐng)求,依次嘗試按照配置所表示的文件。這里是目錄,會(huì)繼續(xù)按照配置查找如等文件。在沒有更為精確的匹配符合的情況下,會(huì)進(jìn)入這一配置中,實(shí)際上相當(dāng)于缺省配置。 以下備忘 Nginx 中基礎(chǔ)配置的含義。 nginx.conf 在 /etc/nginx 中可以找到 nginx.conf 配置文件,其配置及注釋如下: # 運(yùn)行 Nginx worker 進(jìn)程的用戶群組為 nginx user ...

    wdzgege 評(píng)論0 收藏0
  • Nginx配置淺析

    摘要:選擇以結(jié)尾的進(jìn)行匹配,并優(yōu)先選擇最長的。排序?qū)ζヅ溥^程也有一定的影響,因?yàn)樵谄ヅ涞阶铋L最精確的之后就會(huì)停止匹配。將所有非正則表達(dá)式的與請(qǐng)求的進(jìn)行對(duì)比。結(jié)束當(dāng)前的指令。返回一個(gè)狀態(tài)碼為的永久重定向。 showImg(https://segmentfault.com/img/remote/1460000010731049); Nginx是Igor Sysoev用C語言編寫的一個(gè)web服務(wù)器...

    娣辯孩 評(píng)論0 收藏0
  • Nginx介紹和使用

    摘要:介紹和使用一介紹是一個(gè)十分輕量級(jí)并且高性能和反向代理服務(wù)器,同樣也是一個(gè)代理服務(wù)器。如果沒有匹配的正則,則使用前面記錄的最長匹配前綴字符。使用精確匹配可以提高查找的速度。例如經(jīng)常請(qǐng)求的話,可以使用來定義。 Nginx介紹和使用 一、介紹 Nginx是一個(gè)十分輕量級(jí)并且高性能HTTP和反向代理服務(wù)器,同樣也是一個(gè)IMAP/POP3/SMTP代理服務(wù)器。 二、特性 HTTP服務(wù)器 反向代...

    UsherChen 評(píng)論0 收藏0
  • [譯] nginx是如何處理Request

    摘要:如何阻止處理未定義的。如果沒有被發(fā)現(xiàn),將被處理。第一個(gè)匹配的表達(dá)式終止搜索,將使用這個(gè)。此外,任何人可能請(qǐng)求任何是在查詢字符串現(xiàn)在我們來看將如何被處理。這個(gè)將被前綴位置首次匹配然后被正則表達(dá)式匹配,因此,被后處理。 官文:How nginx processes a request ???????Nginx首先判斷哪一個(gè)Server應(yīng)該被用來處理這個(gè)Request。舉個(gè)簡單的配置例子,三...

    BigTomato 評(píng)論0 收藏0
  • nginx(一):基本配置介紹

    摘要:本博客首發(fā)在,后因各種原因遷移至先來一波官方站點(diǎn)關(guān)于介紹。同時(shí)擁有一套緩存機(jī)制,可以進(jìn)一步降低網(wǎng)絡(luò)壓力,加速用戶響應(yīng)。主配置文件中,使用命令引用分支配置文件。接收到一個(gè)請(qǐng)求后,先與所有標(biāo)準(zhǔn)進(jìn)行匹配,并記錄匹配度最高的一個(gè)。 本博客首發(fā)在cnblogs,后因各種原因遷移至segmentfault 先來一波官方站點(diǎn)關(guān)于nginx介紹。nginx相關(guān)歷史這里不再贅述啦。showImg(ht...

    liuchengxu 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<