Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > ffcb1958eac7a3b1ab611ffedd20179f > files > 11

apache-mod_cband-0.9.7.5-8mdv2010.0.i586.rpm


# Speed limiting example

<IfModule mod_cband.c>

    # Turn On random pulse for data sending
    CBandRandomPulse On
    
    <Location /cband-status>
    SetHandler cband-status
    </Location>

    CBandDefaultExceededURL http://www.google.com
    CBandScoreFlushPeriod 100

    <CBandClass class_1>
	CBandClassDst 216.239.37.99
        CBandClassDst 127/8
	CBandClassDst 192.168.0.0/24
        CBandClassDst 10.0.0.20
    </CBandClass>

    <CBandClass class_2>
	CBandClassDst 192.168.100.100
        CBandClassDst 153.19/16
    </CBandClass>

    <CBandClass class_3>
	CBandClassDst 10.13/16
    </CBandClass>

    <CBandUser user1>
	CBandUserLimit 100M
        CBandUserExceededURL http://myserver.com/exu1.html
	CBandUserScoreboard /var/run/apache2/scoreboards/user1.scoreboard
	CBandUserPeriod 10W
	
	# 1024kbps, 10 request/s, max 10 connections
	CBandUserSpeed 1024 10 10
    </CBandUser>

    <CBandUser user2>
        CBandUserLimit 1000000 
	CBandUserExceededURL http://myserver.com/exu2.html
        CBandUserScoreboard /var/run/apache2/scoreboards/user2.scoreboard
	CBandUserClassLimit class_1 50000
	CBandUserPeriod 20H
    </CBandUser>

    <CBandUser user3>
        CBandUserLimit 1G
	CBandUserExceededURL http://myserver.com/exu3.html
        CBandUserScoreboard /var/run/apache2/scoreboards/user3.scoreboard
	CBandUserClassLimit class_2 3000K
        CBandUserClassLimit class_3 100M
	CBandUserPeriod 2H
	# 512kbps, 10 requests/s, max 10 connections
	CBandUserSpeed 512 10 10
    </CBandUser>
</IfModule>

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /var/www2/html-vhost1
ServerName vhost1.myserver.com
<IfModule mod_cband.c>
    CBandLimit 600M
    CBandUser user1
    CBandExceededURL http://myserver.com/ex1.html
    CBandScoreboard /var/run/apache2/scoreboards/vhost1.scoreboard
    CBandClassLimit class_1 1G
    CBandPeriod 200S
    
    # 100kb/s, 10 request/s, max 5 connections
    CBandSpeed 100kb 10 5
    
    # 10kb/s, 3 request/s -> speed limit for any remote client, max 5 connections
    CBandRemoteSpeed 10kb/s 3 5
    
    # 10kb/s, 2 request/s -> speed limit for remote client from class_2, max 5 connections
    CBandClassRemoteSpeed class_2 10kb/s 2 5
</IfModule>
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /var/www2/html-vhost2
ServerName vhost2.myserver.com
<IfModule mod_cband.c>
    CBandUser user2
    CBandLimit 900M
    CBandExceededURL http://myserver.com/ex2.html
    CBandScoreboard /var/run/apache2/scoreboards/vhost2.scoreboard
    CBandClassLimit class_1 700M
    CBandClassLimit class_2 100000
    CBandClassLimit class_3 5000K
    CBandPeriod 5D
    CBandSpeed 1000 10 10
</IfModule>
</VirtualHost>

<VirtualHost *:80>
DocumentRoot /var/www2/html-vhost3
ServerName vhost3.myserver.com
<IfModule mod_cband.c>
    CBandUser user3
    CBandLimit 10G
    CBandExceededURL http://myserver.com/ex3.htm
    CBandScoreboard /var/run/apache2/scoreboards/vhost3.scoreboard
    CBandClassLimit class_3 200M
    CBandPeriod 1W
    CBandSpeed 2000 10 10
</IfModule>
</VirtualHost>