Plesk AWStats view statistics for all domain
By default in Plesk you can view AWstats statistics for each domain separately at http://<yourdomain>/webstat . And you must type here FTP password for the domain. It’s not comfortably when your server holds much more than one domain.
So, our task is to create superadmin-access for AWStats for viewing all domains statistics with only one password.
First of all, find you awstats.pl file. It must be located in cgi-bin directory which lies near your vhosts. In my case it’s /srv/www/cgi-bin
Put here 2 files:
.htaccess:
AuthUserFile /srv/www/cgi-bin/.htpasswd AuthName "AWStats" AuthType Basic require valid-user
index.pl:
#!/usr/bin/perl use strict; use warnings; use CGI qw(:standard); print header; print start_html(-title => 'AWStats'); opendir (DIRH, '/usr/local/psa/etc/awstats') || die; # path depends on your system print '<div align="center">'; my $file; my @files; # awstats config files are named like awstats.<yourdomain>-http.conf # if you need to see also ftp etc, modify my code while ($file = readdir DIRH) { $_ = $file; # my perl doesn't works without assignment result of readdir next unless m/\-http\.conf$/; push @files, $file; } for $file (sort @files) { $_ = $file; s/^awstats\.//; s/\.conf//; print "<a target='_blank' href='awstats.pl?config=",$_,"'>"; s/\-http//; print; print '</a><br>'; } print "</div>";
Don’t forget to chmod +x index.pl
To finish with this dir, create .hpasswd file:
htpasswd -c .htpasswd <username>
At last you need to config Apache web-server.
Put in /etc/apache2/conf.d/awstats.conf (or create a new one):
ScriptAlias /awstats-full /srv/www/cgi-bin Alias /awstats-icon /usr/share/apache2/icons/awstats <Directory /srv/www/cgi-bin> AllowOverride All </Directory>
Please check all paths, they are depend on your system. For exampe, apache config dir may be /etc/httpd/
Finally, restart Apache graceful (recommended)
apachectl -k graceful
or restart fully
apachectl -k restart
Now you can see all domain statistics on http://<your ip>/awstats-full/index.pl