Tag: apache2

Move from apache2-mpm-prefork to apache2-mpm-worker, and use php5-cgi on Debian Squeeze for more performance

Here is how to change from apache2-mpm-prefork to apache2-mpm-worker, , when having used mpm-prefork before, and php5, on Debian Squeeze.

Step1. Stop Apache2:

# /etc/init.d/apache2 stop

Step2. Install apache2-mpm-worker:
That will remove some packages, like apache2-mpm-prefork and libapache-mod-php5, and install apache2-mpm-worker, and php5-cgi instead.

# apt-get install apache2-mpm-worker

Step3. Set Apache2 to use php5-cgi:


Get rid of favicon.ico does not exist and robots.txt does not exist

If you run an Apache2  server then you have no doubt seen the following error messages a thousand times in your error.log file:

File does not exist: /var/www/robots.txt

File does not exist: /var/www/favicon.ico

As you know by now  not having a favicon.ico file  web browsers will requesting  it each time. But you can tell Apache2  not to log the event as a mistake message.

You will still see the request in the access.log, but at least you will have a cleaner error.log file.

Solution:


Prevent DOS Attack on Apache2 Webserver on Debian Squeeze Server with mod_evasive

In the following tutorial  i will explain the installation of the apache2 module “mod_evasive“.
Mod_evasive tracks the number of requests for files on the Apache2  server and blocks the delivery in case a certain limit is reached.

Step1. Install mod_evasive module:

apt-get install libapache2-mod-evasive

Step2. Create the log directory for mod_evasive:

mkdir -p /var/log/apache2/evasive

NOTE: Make sure the www-data user will have access to create logs:

chown -R www-data:root /var/log/apache2/evasive

Step3. Now edit the configuration file for the module 0 located in /etc/apache2/mods-available/mod-evasive.load like this:

vim /etc/apache2/mods-available/mod-evasive.load

After edit the file will look  like this:

LoadModule evasive20_module /usr/lib/apache2/modules/mod_evasive20.so
 <IfModule  mod_evasive20.c>
 DOSHashTableSize 3097
 DOSPageCount 5
 DOSSiteCount 120
 DOSPageInterval 1.5
 DOSSiteInterval 1.5
 DOSBlockingPeriod 10
 DOSLogDir "/var/log/apache2/evasive"
 </IfModule>

This config seems to be optimal for me.

Step4. Enable the module and restart apache:

a2enmod mod-evasive
 /etc/init.d/apache2 restart

 


How to config PhpMyAdmin to Work With Nginx

If you discovered that proxying your webserver with varnish breaks PhpMyAdmin I’ve got the solution:

Problem is that the backend webserver, apache2 or nginx doesn’t even know it’s running behind another software.

Varnish does a completely normal request to webserver. Most times this isn’t any problem at all.

PhpMyAdmin tries to be “smart” and figure out its absolute URL and I run the apache2 or nginx backend on port 80.

The solution is to force an URL.

Add the following line to “config.inc.php“, changing the obvious:

$cfg['PmaAbsoluteUri'] = 'http://yourdomain.com/phpmyadmin/';

Enjoy!


Apache2 Web Server Logs – How To

Log Files:
Log files are critical to managing Apache.
Managing these logs can provide advance security warnings, provide detailed information in terms of who is visiting your site and where they are coming from and can help you troubleshoot the use of your server resources. The two main log files are listed below from a Debian Squeeze Server.
The access_log file gives you information on who is using your web server and the error_log provides information for troubleshooting.

/var/log/apache2/access_log
/var/log/apache2/error_log

How to View Apache2 Logs:

View apache2 logs with tail and head:

The basic tail command will show the tailend of the log.

tail /var/log/apache2/access_log

You can use the -n option to view a specific number of lines  like in this example:

tail -n100 /var/log/apache2/access_log

Head is the opposite of tail.


       


Categories

Page 1 of 212
Copyright © 2012 Linux Debian Tutorials | Debian Squeeze Tutorials. All rights reserved.
Feedbase
Stop ACTA 37 queries in 0.235 seconds.