How To: Setting up awstats with apache 2 on debian-ubuntu

1 minute read

Awstats is a great web log analyser. It gives really useful statistics about traffic on your web sites.

Installing awstats in debian/ubuntu still needs so tweaking to produce neat statistics.

In this articles, I’m going to show you what needs to be done.

What we are going to do here, is to configure awstats such as you will be able to access your stats using a url like http://www.mysite.org/awstats/awstats.pl. There is basically 5 steps to do:

  1. Install Awstats
  2. Configure Apache
  3. Configure Awstats
  4. Generate the first stats
  5. Automate it using cron

This article comes in 2 pages. Point 1 and 2 are viewed on this page. Points 3 to 5 in page 2.

1. Installing Awstats

In the first place, you need to install awstats:

tester@laptop:~$sudo apt-get install awstats

OK, awstats is installed, let’s configure apache

2. Configuring Apache2

You need to make awstats setting global to all web site. To do so, we are going to create a file named /etc/apache2/awstats.conf where we are going to stuff all apache settings for awstats, so create and edit this file:

tester@laptop:~$sudo vi /etc/apache2/awstats.conf
Alias /awstatsclasses "/usr/share/awstats/lib/"
Alias /awstats-icon/ "/usr/share/awstats/icon/"
Alias /awstatscss "/usr/share/doc/awstats/examples/css"
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /awstats/ /usr/lib/cgi-bin/
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch

What we are saying here is that awstatsclasses will be found in /usr/share/awstats/lib/, awstats icon in /usr/share/awstats/icon/, awstats css in /usr/share/doc/awstats/examples/css and that the cgi-bin repertory on a web site is located in /usr/lib/cgi-bin/, this is the place where is located awstats.pl. As we also want to be able to access the stats using an URL like http://www.mysite.org/awstats/awstats.pl, we add the ScriptAlias instruction making the repertory /awstats on a web server to point to /usr/lib/cgi-bin/.

Now that we define all the basic setting that will let us access the stats directly over http, we need to inform apache2 about this. Edit /etc/apache2/apache2.conf :

tester@laptop:~$sudo vi /etc/apache2/apache2.conf

and add the following line at the end of the file:

Include /etc/apache2/awstats.conf

Now, reload apache2:

tester@laptop:~$sudo /etc/init.d/apache2 reload

Ok, now you can give a first shot to http://www.mysite.org/awstats/awstats.pl but you will get the following error:

Error: SiteDomain parameter not defined in your config/domain file. You must edit it for using this version of AWStats.

That basically means that we need to configure awstats.