How to install mod_evasive in cPanel server

Please follow the procedure given below to install and configure  mod_evasive in  cPanel server with apache 2.2.

Download the   latest source file from

# cd /usr/local/src/
# wget /blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
# tar -xvzf mod_evasive_1.10.1.tar.gz
# cd mod_evasive/
# /usr/local/apache/bin/apxs -cia mod_evasive20.c

Now create a file named  /usr/local/apache/conf/mod_evasive.conf and add the following lines

# cat /usr/local/apache/conf/mod_evasive.conf
LoadModule evasive20_module   modules/
<IfModule mod_evasive20.c>
DOSHashTableSize    3097
DOSPageCount        2
DOSSiteCount        50
DOSPageInterval     1
DOSSiteInterval     1
DOSBlockingPeriod   10

Now include the above file inside  /usr/local/apache/conf/includes/pre_main_global.conf

Include "/usr/local/apache/conf/mod_evasive.conf"

Now rebuild httpd.conf


Now restart apache

/scripts/restartsrv httpd

How to find php extension_dir

The extension_dir is the php system path into which the thirdparty installations were installing the  modules like eaccelerator , memcache , etc,.  Sometimes this path will be missing from  server php.ini .  So then you need to find out the correct extension_dir and  update it in php.ini . So that the installed extension will work fine.

So the question is how to find the extension_dir . There will be a php-config file with every php  installations . You can find it from this file . To find it easily run the following command in shell

# grep extension_dir=  `which php-config`

The above result will show an out put like the following ,

#  grep extension_dir=  `which php-config`



Please note the path will  be different in your server .

How to install eAccelerator in directadmin server

The eaccelerator installation in directadmin is easy . This procedure is same in all php linux distribution. You may need to do the following procedure. This is based on redhat / centos distributions

1) Download the latest eaccelerator source files from   and extract it  after that run the following commands

# yum -y install autoconf
# phpize
# ./configure
# make
# make install

2) Find the php.ini using the command ” php –ini” and edit it .  The update the  “extension_dir ” current extension  directory . This path contains all the  php  third party installations.

# php --ini | grep Configuration
Configuration File (php.ini) Path: /usr/local/etc/php5/cgi
Loaded Configuration File:         /usr/local/etc/php5/cgi/php.ini
# grep extension_dir /usr/local/etc/php5/cgi/php.ini
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20090626"

Please note the extension_dir path will be different in your server.

3) Now add the following lines at the end of php.ini


4) Now create the cache folder  /var/cache/eaccelerator

# mkdir /var/cache/eaccelerator
# chmod  777 /var/cache/eaccelerator

5) Restart apache  and test it