主頁 > 知識庫 > Nginx對網(wǎng)段內ip的連接數(shù)限流配置詳解

Nginx對網(wǎng)段內ip的連接數(shù)限流配置詳解

熱門標簽:物超所值的400電話申請 如何在各種地圖標注自己的地址 百應電銷機器人靠譜嗎 營銷電銷機器人招商 菏澤crm外呼系統(tǒng)價格 信陽銷售外呼系統(tǒng)招商 coreldraw地圖標注 遼寧電銷平臺外呼系統(tǒng)軟件 申請400電話號碼多少錢

Nginx中的所謂連接數(shù)限制,其實是tcp連接,也就是請求方通過三次握手后成功建立的連接狀態(tài)。Nginx一般為我們提供了 ngx_http_limit_conn_module 模塊來提供限制連接功能。該模塊可以根據(jù)定義的鍵來限制每個鍵值的連接數(shù),如同一個IP來源的連接數(shù)。

ngx_http_limit_conn_module指令解釋

Syntax:  limit_conn zone number;
Default:  —
Context:  http, server, location

該指令描述會話狀態(tài)存儲區(qū)域。鍵的狀態(tài)中保存了當前連接數(shù),鍵的值可以是特定變量的任何非空值(空值將不會被考慮)。$variable定義鍵,zone=name定義區(qū)域名稱。 常見使用例子:

limit_conn_zone $binary_remote_addr zone=addr:10m;

server {
  location /download/ {
    limit_conn addr 1;
  }

上面例子表示當請求訪問 /download/ 時, 同一時刻只能一個請求連接會成功進行資源下載。

網(wǎng)段限制

常見的limit_conn_zone 配置一般設置 $binary_remote_addr 或 $server_name,進行單一ip或主機級的連接數(shù)限制。

但有時候我們希望能對某ip網(wǎng)段進行連接數(shù)限制,那我們可以這么做:

http {

... ...

  limit_conn_zone $ip_segment zone=network_segment:10m;

  server {
      ... ...
      set $ip_segment $remote_addr;

      if ( $ip_segment ~ ^(\d+)\.(\d+)\.(\d+)\.(\d+) ) {
        set $ip_segment $1.$2.$3;
      }

      location /download/ {
        limit_conn network_segment 10; 
        #limit_rate 200k;
      }

  }
}

這樣基本能滿足Nginx對網(wǎng)段內所有ip的連接數(shù)做統(tǒng)一的連接數(shù)限制了。

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

標簽:玉樹 泰安 廈門 江門 瀘州 湖北 江西 內江

巨人網(wǎng)絡通訊聲明:本文標題《Nginx對網(wǎng)段內ip的連接數(shù)限流配置詳解》,本文關鍵詞  Nginx,對,網(wǎng)段,內,的,連接,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Nginx對網(wǎng)段內ip的連接數(shù)限流配置詳解》相關的同類信息!
  • 本頁收集關于Nginx對網(wǎng)段內ip的連接數(shù)限流配置詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章