Wyszukiwanie w witrynie

Instalowanie AWStats (Advanced Web Statistics) na Ubuntu 18.04 z Apache


W tym samouczku nauczymy się instalować AWStats na serwerze Ubuntu 18.04 z serwerem WWW Apache. AWStats (Advanced Web Statistics) to bezpłatne oprogramowanie do analityki internetowej o otwartym kodzie źródłowym, napisane w języku programowania Perl. Oprogramowanie do analityki internetowej jest używane przez webmasterów, aby wiedzieć, ilu użytkowników odwiedza witrynę w ciągu dnia/tygodnia/miesiąca, jakiej przeglądarki internetowej używają itp. Jest to kluczowy program pomagający w rozwoju ich witryn internetowych.

Funkcje AWStats

  • Może generować statystyki użytkowników z plików dziennika serwera. Obsługiwane są serwery internetowe, strumieniowe, FTP lub pocztowe.
  • Może pokazać liczbę odwiedzin i unikalnych gości, czas trwania wizyty.
  • wyświetlać informacje o odwiedzających (system operacyjny, przeglądarka, adres IP, rozmiar ekranu, wyszukiwarka, fraza kluczowa i słowa kluczowe używane do znalezienia Twojej witryny)
  • Działa z linii poleceń i jako CGI.

Aby zobaczyć pełną listę funkcji, odwiedź oficjalną stronę AWStats.

Instalowanie AWStats na Ubuntu 18.04 z Apache

Najpierw musisz zainstalować serwer WWW Apache. Uruchom następujące polecenie, aby zainstalować Apache z domyślnego repozytorium Ubuntu.

sudo apt install apache2

Następnie zainstaluj AWStats. Do uzyskania informacji GeoIP używane są dwa pakiety Perla.

sudo apt install awstats libgeo-ip-perl libgeo-ipfree-perl

AWStats może zbierać statystyki z plików dziennika Apache. Zaleca się utworzenie oddzielnych plików dziennika dla każdego wirtualnego hosta Apache.

Konfigurowanie wirtualnego hosta Apache

Edytuj plik hosta wirtualnego Apache.

sudo nano /etc/apache2/sites-available/example.com.conf

Najpierw musisz włączyć logowanie do swojego wirtualnego hosta, dodając poniższe linie w tagu .

ErrorLog ${APACHE_LOG_DIR}/exmaple.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined

Następnie dodaj następujące wiersze na końcu pliku przed tagiem zamykającym .

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

Zapisz i zamknij plik. Uruchom następujące polecenie, aby włączyć moduł CGI i ponownie uruchomić Apache, aby zmiany zaczęły obowiązywać.

sudo a2enmod cgi

sudo systemctl restart apache2

Interfejs sieciowy AWStats będzie dostępny pod adresem example.com/cgi-bin/awstats.pl, jednak aby działał, musimy dokonać nieco dodatkowej konfiguracji.

Konfiguracja AWStats

Główny plik konfiguracyjny to /etc/awstats/awstats.conf. Aby zachować zmiany po aktualizacji pakietu awstats, kopiujemy go do nowego pliku.

sudo cp /etc/awstats/awstats.conf /etc/awstats/awstats.exmaple.com.conf

Następnie edytuj nowy plik.

sudo nano /etc/awstats/awstats.example.com.conf

Najpierw musisz zmienić wartość LogFile na nazwę pliku używaną przez Twój wirtualny host Apache.

LogFile="/var/log/apache2/example.com_access.log"

Następnie znajdź następujący wiersz.

LogFormat=4

Ponieważ na wirtualnym hoście Apache użyliśmy formatu dziennika combined, dlatego musimy zmienić wartość na 1.

LogFormat=1

Następnie dodaj nazwę swojej domeny w parametrze SiteDomain. Jeśli Twoja witryna korzysta z subdomeny, np. blog.example.com, dodaj blog.example.com do parametru SiteDomain.

SiteDomain="blog.example.com"

Dodaj także nazwę swojej domeny do parametru HostAliases.

HostAliases="blog.example.com localhost 127.0.0.1"

Zapisz i zamknij plik. Następnie musimy pozwolić użytkownikowi www-data na odczyt dzienników Apache za pomocą następującego polecenia.

sudo setfacl -R -m "u:www-data:rx" /var/log/apache2/

Interfejs sieciowy AWStats jest już dostępny (example.com/cgi-bin/awstats.pl).

Zadanie cron AWStats (/etc/cron.d/awstats) domyślnie aktualizuje statystyki co 10 minut. AWStats przechowuje swoje dane w katalogu /var/lib/awstats/.

Ograniczanie dostępu do interfejsu sieciowego AWStats

Domyślnie interfejs sieciowy AWStats jest publicznie dostępny. Aby ograniczyć dostęp, możemy włączyć podstawowe uwierzytelnianie hasłem na serwerze WWW Apache. Uruchom następujące polecenie, aby ustawić hasło dla użytkownika admin. Plik /etc/apache2/htpasswd służy do przechowywania nazw użytkowników i haseł

sudo htpasswd -c /etc/apache2/htpasswd admin

Następnie edytuj plik hosta wirtualnego Apache.

sudo nano /etc/apache2/sites-available/example.com.conf

Dodaj następujące linie.

<Directory "/usr/lib/cgi-bin/">
    AuthUserFile /etc/apache2/htpasswd
    AuthName "Please Enter Your Password"
    AuthType Basic
    Require valid-user
</Directory>

Zapisz i zamknij plik. Następnie uruchom ponownie Apache, aby zmiany zaczęły obowiązywać.

sudo systemctl restart apache2

Jeśli ponownie uzyskasz dostęp do interfejsu internetowego AWStats, zostaniesz poproszony o podanie nazwy użytkownika i hasła.

Wniosek

Mam nadzieję, że ten samouczek pomógł ci zainstalować AWStats na Ubuntu 18.04 z serwerem WWW Apache. Jak zawsze, jeśli uważasz, że ten post był przydatny, zapisz się do naszego bezpłatnego biuletynu, aby uzyskać więcej porad i wskazówek. Uważaj 🙂

Powiązane artykuły