1. 程式人生 > >Nginx限制IP併發連線數及每秒處理請求數

Nginx限制IP併發連線數及每秒處理請求數

為了防止伺服器被惡意採集或ddos攻擊給搞死, 所以給限個速。

這裡主要使用Nginx的ngx_http_limit_req_module和ngx_http_limit_conn_module來控制訪問量.

這兩個模組在Nginx中已內建, 在nginx.conf檔案中加入相應的配置即可使用。

如下所示(附帶白名單功能),對所有的PHP頁面的請求進行限速:

http {
     #geot和map兩段用於處理限速白名單,map段對映名單到$limit,處於geo內的IP將被對映為空值,否則為其IP地址。
     #limit_conn_zone和limit_req_zone指令對於鍵為空值的將會被忽略,從而實現對於列出來的IP不做限制
     geo $whiteiplist  {
        default 1;
        127.0.0.1 0;
        121.199.16.249 0;
     }
     map $whiteiplist  $limit {
        1 $binary_remote_addr;
        0 "";
     }
     
     #limit_conn_zone定義每個IP的併發連線數量
     #設定一個快取區儲存不同key的狀態,大小10m。使用$limit來作為key,以此限制每個源IP的連結數
     limit_conn_zone $limit  zone=perip:10m;
     
     
     #limit_req_zone定義每個IP的每秒請求數量
     #設定一個快取區reqps儲存不同key的狀態,大小10m。這裡的狀態是指當前的過量請求數。
     #$limit為空值則不限速,否則對應的IP進行限制每秒5個連線請求。
     limit_req_zone  $limit  zone=reqps:10m rate=5r/s;

      
 
     server {
        listen     80;
        server_name   www.domain.com;
 
        #只對PHP頁面的請求進行限速
        location ~ [^/]\.php(/|$)
        {
            #對應limit_conn_zone塊
            #限制每IP的PHP頁面請求併發數量為5個
            limit_conn perip 5; 
           
            #對應limit_req_zone塊
            #限制每IP的每秒的PHP頁面請求次數為上面定義的rate的值:每秒5個請求,不延遲      
            limit_req zone=reqps nodelay;
        }
     }
}

相關推薦

Nginx限制IP併發連線處理請求

為了防止伺服器被惡意採集或ddos攻擊給搞死, 所以給限個速。 這裡主要使用Nginx的ngx_http_limit_req_module和ngx_http_limit_conn_module來控制訪問量. 這兩個模組在Nginx中已內建, 在nginx.conf檔案

Nginx如何限制每個客戶端處理請求

req bsp sta info http 處理請求 共享 img evel nginx.conf 演示: limit_req_zone $binary_remote_addr zone=one:10m rate=2r/m;#以用戶IP作為key 開辟共

nginx 限制ip併發限制速度

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Nginx並發連接、下載速度限制,防攻擊殺手鐧

意思 bsp p s address ket agen 將在 hit sun 1.限制IP訪問頻率:HttpLimitZoneModule 限制並發連接數實例limit_zone只能定義在http作用域,limit_conn可以定義在http server location

Nginx限制IP訪問獲取客戶端realip實戰

org 編譯安裝nginx .org 編譯安裝 rem blog 標簽 技術 code 做網站時經常會用到remote_addr和x_forwarded_for這兩個頭信息來獲取客戶端的IP,然而當有反向代理或者CDN的情況下,這兩個值就不夠準確了,需要調整一些配置

nginx最大併發連線的思考:worker_processes、worker_connections、worker_rlimit_nofile

無論是看過的nginx有關書還是網上看到的有關nginx 配置說明的文章(http://wiki.nginx.org/EventsModule#worker_connections),無一例外,在講到 worker_connections 和 max_clients這兩個概念的關係時都一致的一筆帶過

利用apache限制IP併發和下載流量控制

一,為什麼要對IP併發數,下載流量進行控制 說正題之前,先給大家講個故事,那是在2007年,我進了一家公司,當時我們正在給達芙妮做電子商務網,www.idaphne.com。從三月份開始做的吧,九月份正式上線,上線後沒多長時間,有一天伺服器老是死,後來查了一下,一個IP

Apache限制IP併發和流量控制

轉自:http://www.cszhi.com/20120512/apache-mod_bandwidth-mod_limitipconn.html 使用mod_limitipconn模組限制IP併發連線數 安裝: wget http://dominia.org/dja

nginx限制ip請求次數 以及併發次數

    如何設定能限制某個IP某一時間段的訪問次數是一個讓人頭疼的問題,特別面對惡意的ddos攻擊的時候。其中CC攻擊(Challenge Collapsar)是DDOS(分散式拒絕服務)的一種,也是一種常見的網站攻擊方法,攻擊者通過代理伺服器或者肉雞向向受害主機不停地發

nginx限制IP惡意調用接口處理辦法

nginx 安全 iptables 今天一大早運營跑來投訴說:“公司昨晚發了20多萬條註冊短信息,我們沒有這麽多註冊用戶啊!”,我查詢日誌發現,一直有人在惡意調用我們公司的短信接口,造成一直發送註冊信息,而且不斷變化IP,初次遇到還是有點懵逼的! 調用註冊短信接口日誌內容: 121.204.87.

nginx限制IP訪問網站

oot .com 訪問 list name index.php gin wro ip訪問 需求:網站只允許指定IP訪問,其他訪問一律拒絕server { listen 80; server_name a.com; index

傳送簡訊驗證碼沒有判斷圖形驗證碼是否正確,被攻擊,臨時用nginx限制ip訪問

在專案中,註冊頁面上傳送簡訊驗證碼沒有判斷圖形驗證碼是否正確,就傳送驗證碼了,結果被攻擊了,nginx的access.log看到訪問的ip,並將訪問過多的ip選擇出來,臨時用nginx限制ip訪問。後面修改程式碼,重新發版。 但是,對於套了一層 CDN 或代理的網站,通過

nginx限制IP訪問

一、伺服器全侷限IP #vi nginx.conf     allow 10.57.22.172;  #允許的IP     deny all; 二、站點限IP #vi vhosts.conf 站點全侷限IP: location / {     index  index.h

取得指定excel檔案內的sheet一個sheet的列

--------------------------------------------------------- -- happyflystone -- 2010.04 -- 轉載註明出處--->http://blog.csdn.net/happyflystone -- 取得指定excel檔案內的

sql常用格式化函字符串函

逗號 裏的 split 常用 字符串拼接 postgres lac post 長度 一.常用格式化函數 1.日期轉字符串 select to_char(current_timestamp, ‘YYYY-MM-DD HH24:MI:SS‘)  //2017-09-18 2

Facebook兆級別圖片存儲百萬級別圖片查詢原理

避免 決定 volume 流程 mac 便是 blog 前言 HA 前言 Facebook(後面簡稱fb)是世界最大的社交平臺,需要存儲的數據時刻都在劇增(占比最大為圖片,每天存儲約20億張,大概是微信的三倍)。 那麽問題來了,fb是如何存儲兆級別的圖片?並且又是如何處理每

處理10萬高併發訂單的某集團支付系統架構分享

轉載自:最程式碼 官方 隨著樂視硬體搶購的不斷升級,樂視集團支付面臨的請求壓力百倍乃至千倍的暴增。作為商品購買的最後一環,保證使用者快速穩定的完成支付尤為重要。所以在15年11月,我們對整個支付系統進行了全面的架構升級,使之具備了每秒穩定處理10萬訂單的能力。為樂視生態各種形式的搶購秒殺活動提供

php自定義函內部函----字符串處理

統計 數組 bsp 返回值 輸出 Coding 定義函數 選擇 sci 一、統計字符串 (1)strlen() 統計字符串長度 函數返回值為整形,表示字符串長度。若返回值為0,表示該字符串為空。該函數對待一個UTF8的中文字符,處理為3個字節長度。 echo strlen

處理10萬高併發訂單的樂視集團支付系統架構分享

隨著樂視硬體搶購的不斷升級,樂視集團支付面臨的請求壓力百倍乃至千倍的暴增。作為商品購買的最後一環,保證使用者快速穩定的完成支付尤為重要。所以在15年11月,我們對整個支付系統進行了全面的架構升級,使之具備了每秒穩定處理10萬訂單的能力。為樂視生態各種形式的搶購秒殺活動提供

處理10萬高併發訂單的樂視集團支付系統架構分享【轉】

轉自:https://www.cnblogs.com/hackxhao/p/5496254.html 隨著樂視硬體搶購的不斷升級,樂視集團支付面臨的請求壓力百倍乃至千倍的暴增。作為商品購買的最後一環,保證使用者快速穩定的完成支付尤為重要。所以在15年11月,我們對整個支付系統進行了全面的架構升級