利用apache限制IP併發數和下載流量控制
一,為什麼要對IP併發數,下載流量進行控制
說正題之前,先給大家講個故事,那是在2007年,我進了一家公司,當時我們正在給達芙妮做電子商務網,www.idaphne.com。從三月份開始做的吧,九月份正式上線,上線後沒多長時間,有一天伺服器老是死,後來查了一下,一個IP訪問是特別大,然後運維人員把這個IP給封了就好了,但是過了一會,這種情況又出現了,然後又把新出的這個IP也封了。我當時就想肯定是別人買鞋,買的不爽,退錢又搞的人家不爽,人家才想起來搞你的網站了,像這種功擊很低階了,剛上線,運維人員估計還沒有來得及考慮這一些,這就是我們為什麼要對ip併發數進行控制的原因。對下載流量進行控制,是對網路頻寬進行管理,也是非常重要的。不能有很多人下東西,直接把你網站下掛了
二,安裝mod_limitipconn限制IP連線數
2,安裝:[[email protected] mod_limitipconn-0.22]# /usr/local/apache2/bin/apxs -c -i mod_limitipconn.c
3,配置如下vi httpd.conf
ExtendedStatus On LoadModule limitipconn_module modules/mod_limitipconn.so <IfModule mod_limitipconn.c> <Location /> #對應根目錄 MaxConnPerIP 6 #最大併發數 NoIPLimit image/* #對圖片不做限制 </Location> <Location /download> #對根目錄下面的download MaxConnPerIP 1 #最大併發數為1 </Location> </IfModule>
說明:解壓mod_limitipconn-0.22.tar.gz後,檔案裡面有一個README裡面有配置的拿出來,根據自己的需要改一改就行了,如果真的不會,可以上網上查,像apache用的人這麼多,我想你的問題別人也遇到過,一查肯定能查到。如果你想放到虛擬主機進行最大併發數控制,可以修改extra/httpd-vhost.conf把<IfModule mod_limitipconn.c>這個東西copy到<Virtualhost>中就可以了
三,安裝mod_bandwidth
mod_bandwidth可以對IP的併發數進行控制,也可以對下載流量進行控制,也可以對某個目錄的流量進行控制。
2,安裝:[[email protected] mod_bw]# /usr/local/apache2/bin/apxs -c -i mod_bw.c
3,配置如下vi httpd.conf 加上LoadModule bw_module modules/mod_bw.so
然後開啟vi httpd-vhosts.conf
listen 10004
NameVirtualHost *:10004
<VirtualHost *:10004>
DocumentRoot "/home/zhangy/www/test"
ServerName *:10004
BandwidthModule On
ForceBandWidthModule On
Bandwidth all 1024000
MinBandwidth all 50000
LargeFileLimit * 500 50000
MaxConnection all 6
ErrorLog "/home/zhangy/apache/www.test.com-error.log"
CustomLog "/home/zhangy/apache/www.test.com-error.log" common
</VirtualHost>
解壓bandwidth的壓縮檔案後,裡面有一個mod_bw.txt有詳細的說明和例項,下面是部分引數說明:
1,BandWidth localhost 0 #對localhost不限速
2,BandWidth 192.168.1.5 102400 #對192.168.1.5限速為100KB
3,BandWidth “u:^Mozilla(.*)” 10240 #用mozilla時限速10KB
4,BandWidth “u:wget” 102400 #如果用wget下載時限速10KB
5,MinBandWidth all -1 #保證每個客戶端最高速度可達10KB
6,LargeFileLimit .jpg 100 10240 #jpg檔案超過100KB,限速10KB
7,#下面的510挺好,如果不設定,apache自己會報錯,就根報404差不多,頁面非常的醜
ErrorDocument 510 /exceed_speed.html
BandWidthError 510
8,MaxConnection all 10 #所有ip最大連線數為10
9,MaxConnection 192.168.1.5 5 #192.168.1.5最大連線數為5
四,測試
測試很簡單,你按著F5,讓他老涮新就行了,把最大連線數調小一點,一下就可以彈出503錯誤,看下圖
相關推薦
利用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併發數和限制速度
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
nginx和apache限制IP地址訪問的設置方法
nginx和apache限制IP地址一、nginx禁止IP地址訪問1、在nginx配置文件中加入這個:2、重啟nginx服務二、apache禁止IP地址訪問1、更改vhosts.conf文件:NameVirtualHost 192.168.1.191 <VirtualHost 192.168.1.191
Nginx限制IP併發連線數及每秒處理請求數
為了防止伺服器被惡意採集或ddos攻擊給搞死, 所以給限個速。 這裡主要使用Nginx的ngx_http_limit_req_module和ngx_http_limit_conn_module來控制訪問量. 這兩個模組在Nginx中已內建, 在nginx.conf檔案
nginx限制連線數和下載速度
有時候為了限流,我們可以在nginx的server中使用limit_zone設定一個限制域,比如 limit_zone zone1 $binary_remote_addr 10m zone1為限制域
網站架設中的伺服器併發數和伺服器頻寬估計方法
網站的負載能力主要還是依據每日PV的量。對於併發來講,每一個頁面請求可能有很多個HTTP請求,分別用來下載html,js,css和圖片等部分。同時,連線持續的時間也是一個重要的引數。一般來說,就這兩個引數,再加上PV的時間分佈,即一天的多少小時內產生這些PV,
伺服器併發數和訪問量計算與伺服器配置
併發訪問量是10分鐘100人線上?還是每秒100個併發請求? 如果是前者,以在10分鐘內,100人每人平均訪問10個pv,那麼每秒請求數就是100*10/10/60=1.66,對伺服器壓力幾乎就沒有啦,用個單路雙核的伺服器輕鬆搞定。 如果是後者,至少就得一個四核處理器,2G記憶體,10M獨享頻寬以上,才可
ORACLE如何限制ip段登入和登入之後記錄資訊
CREATE USER DBCONFIG IDENTIFIED BY "DBCONFIG" GRANT UNLIMITED TABLESPACE TO DBCONFIG / ALTER USER DBCONFIG ACCOUNT LOCK / CREATE TABLE D
apache 限制IP訪問
<Directory "/var/www"> Options All AllowOverride None Order Deny,Allow Deny From all Allow From 192.168.0.0/24 Allow From 127.0.0.
linux——shell編程之函數和循環控制
read nbsp 進入 var 失敗 tin col img 命令執行 函數:實現獨立功能的代碼段 函數只有在調用時才會執行 語法一: function F_NAME{ 函數體 } 語法二: F_NAME() {
TCP/IP之TCP協議:流量控制(滑動視窗協議)
一、流量控制(滑動視窗協議) 1、流量控制是管理兩端的流量,以免會產生髮送過塊導致收端溢位,或者因收端處理太快而浪費時間的狀態。用的是:滑動視窗,以位元組為單位 2、視窗有3種動作:展開(右邊向右),合攏(左邊向右),收縮(右邊向左)這三種動作受接收端的控制。 合攏:表示已經收到相應位元組的確認了 展開:表
(TCP/IP的特性二)流量控制&阻塞控制
TCP流量控制之滑動視窗協議: TCP協議中,傳送方和接收方均維護了一份視窗,視窗的大小就是TCP可以傳送的資料幀數,在傳送端,只有在傳送視窗內的資料才允許被髮送到接收端,而在接收端,也只有落到接收視窗的資料才允許被接收。這樣通過不斷滑動視窗實現資料的不斷髮送,也通過控
UDP迭代伺服器示例和UDP流量控制的缺失
我們知道, 有tcp伺服器, 也有udp伺服器, 這是按照協議來區分的。 如果按照服務方式來分, 還可以分為迭代伺服器和併發伺服器。 所謂迭代伺服器, 就是單個程序/執行緒在單個埠上順序處理所有客戶端的請求, 而併發伺服器就不一樣了, 可以通
apache限制併發數,IP,頻寬設定
給大家推薦兩個Apache模組,一個是mod_vhost_limit,用來限制請求併發數,一個是mod_limitipconn,用來控制Apache的併發聯接數,通過該模組可以限制同一來源IP的併發聯接數。另一個模組是bw_mod,用於Apache網站頻寬控制,可以根據來源
iptables利用connlimit模組限制同一IP連線數
轉:http://blog.51cto.com/mrxiong/1589429 connlimit模組允許你限制每個客戶端IP的併發連線數,即每個IP同時連線到一個伺服器個數。 connlimit模組主要可以限制內網使用者的網路使用,對伺服器而言則可以限制每個IP發起的連線數。
【轉載】Apache檢視連線數和限制當前的連線數
起因:線上的一臺伺服器,最近總是出現 訪問 很慢的情況發生,點選一個連結要2秒鐘以上才能開啟,按照我們對於訪問人數的估計,伺服器應該不至於響應這麼慢,從而需要針對這個問題進行分析,來解決網站訪問過慢。 分析: 1、首先,在頁面訪問變慢情況發生時,使用 top 命令查看了伺服
檢視apache當前併發訪問數和程序數 ApacheLinux
轉自:http://rainwang.iteye.com/blog/742749 1、檢視apache當前併發訪問數: netstat -an | grep ESTABLISHED | wc -l 對比httpd.conf中MaxClients的數字差距多少。 2、檢視有
ab(apache benchmark)的併發數限制
使用ab的時候當併發數超過1024就會示出錯: windows下提示:apr_pollset_create failed: Invalid argument (22) linux下提示:socket: Too many open files (24) 下面是從CSDN轉的一篇linux下的解決辦法 ====
Apache限制下載執行緒數與頻寬詳解
2014年放了一臺伺服器到資料中心,發現下載量很大,大部份是用迅雷下載這樣會造成伺服器負擔過大,有人下載時會打不開網頁的現象,所以網上查詢解決下載限制的方法。 找到mod_limitipconn與mod_bw這兩個模組,前者是限制下載執行緒數,後者是限制頻寬但是發現,網上9