Это старая версия документа!


AWStats - Сервер статистики

$ apt-get install fcgiwrap

Проверка

$ netstat -an |grep -i perl

Настройка Nginx

# Perl fastcgi
location ~ \.pl$ {
  gzip off;
  try_files $uri =404;
  root /var/www/;
  fastcgi_pass unix:/var/run/fcgiwrap.socket;
  include /etc/nginx/fastcgi_params;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  fastcgi_ignore_client_abort off;
}

Настройка Nginx

                # Awstats
                location /awstats/ {
                        root   /usr/lib/cgi-bin;
                        index  index.html index.htm index.pl;
                        auth_basic \"Website development\"; 
                        auth_basic_user_file /home/${site_name}/authfile;
                }
                location /awstatsclasses/ {
                        alias /usr/share/awstats/lib/;
                }
                location /awstats-icon/ {
                        alias /usr/share/awstats/icon/;
                }
                location /awstatscss {
                        alias /usr/share/doc/awstats/examples/css/;
                }

Дальше натравим awstats на логи nginx. Приступаем к настройке парсера:

cp /etc/awstats/awstats.conf /etc/awstats/awstats.[host-name].conf

Если у Вас на одном сервере находится больше одного сайта, тогда лучше создавать для них отдельные конфигурационные файлы. Дальше приступаем к редактированию ново созданного файла:

/etc/awstats/awstats.[host-name].conf

Откройте его в Вашем любимом редакторе, затем найдите и отредактируйте следующие значения согласно конфигурации сервера:

LogFile="/var/log/nginx/site_access.log" #path to logfile;
LogFormat=1 #for full statistics;
SiteDomain="[host-name]” #domainname;
HostAliases="www.[host-name] [host-name]" #site aliases

Следующим шагом является создание задачи в crontab для регулярного парсинга лог файлов. Естественно хорошо было бы выполнять ее с правами суперпользователя (root) :

*/20 * * * * /usr/lib/cgi-bin/awstats.pl -config=[host-name] -update > /dev/null