it's a raspberry pi

Editorials

 Setups & configurations

anchor life saver

 We got some boring movies

🎥 Cinematique

 Regarding unity3d

🙂 In-game char icons
Externals

 All about pirate games

⚓ Pirates ahoy!

 This is German language

💻 Linux - ubuntusers.de
Windward bathtub
Tasharen Windward Game

 Social news aggregation

🌍 Windward #reddit
Windward intensive

 Official Windward wiki

🛠 Wiki @gamepedia
Front desk clerk

No ads, no trackers,
no web beacons

rum barrel
Something else

 Get the weather widget

🌤 Weather code snippet

 Hotchpotch of weblinks

📖 Yellow pages
Archives
Tag cloud

Install & configure Webalizer on Apache 2.4 web server


Apache Setup Raspberry Pi mini computer to dedicated game server. LAMP. Apache Raspberry Pi mini computer. Dedicated game server.
That is simply just another http web server powered by Apache Software
and the Raspberry Pi Foundation with Raspbian Debian OS Stretch Lite on it.


Webalizer Logo PNG. Webalizer sample reports. Webalizer theme download.

This guide is mainly valid if you deal with a Raspberry Pi
& Raspbian Debian OS Stretch Lite or Stretch
& Apache 2.4 and higher

Together with any other Linux Debian it may function as well.


Google Analytics versus Webalizer


Google Analytics visitors with cookies disabled will not be tracked. Because Google Analytics uses first party cookies (cookies set and read by the same domain currently shown in your address bar) and the number of real users that will block those cookies is increasing. And, at the same time this prevents Google Analytics from tracking visits from automated spiders and other systems that don't interpret JavaScript.


Webalizer will show all requests of the server recorded in the server apache2 logs. It doesn't actually interact with the browser at all. One benefit of this is that you can see how often certain elements of a webpage have been accessed - such as particular images, CSS files, PDFs, RARs and ZIPs and other non-page elements.


The Webalizer is a fast, free web server log file analysis program. It produces highly detailed, easily configurable usage reports in a simple HTML format, for viewing in all standard web browsers.


Webalizer Logo PNG. Webalizer sample reports. Webalizer theme download.

More Webalizer sample reports.

Output produced


The Webalizer produces several reports in html & png for each month processed. In addition, a summary page is generated for the current and previous months, a history file is created and if incremental mode is used, the current month's processed data. The main files & graphics produced are:


      index.html                main summary page
      usage.png                 yearly graph displayed on the main index page
      usage_YYYYMM.html         monthly summary page
      usage_YYYYMM.png          monthly usage graph for specified month/year
      daily_usage_YYYYMM.png    daily usage graph for specified month/year
      hourly_usage_YYYYMM.png   hourly usage graph for specified month/year
      site_YYYYMM.html          all hosts listing /* if enabled */
      url_YYYYMM.html           all urls listing /* if enabled */
      ref_YYYYMM.html           all referrers listing /* if enabled */
      agent_YYYYMM.html         all user agents listing /* if enabled */
      search_YYYYMM.html        all search strings listing /* if enabled */
      webalizer.hist            previous month history
      webalizer.current         incremental data /* if enabled */
      

🚫 Spam filter | Webalizer referrer spamming

Precautions, cutback, elimination, prevention


Spam, Webalizer referrer spamming

Right before you start with anything to install
please get advised by another interesting article.


Installation & configuration


Start e.g. the PuTTy terminal client and log-in to begin the session.


user@raspberry:~ $ sudo su
root@raspberry:~# apt-get install webalizer


Now enable the apache2 hostname resolution.


root@raspberry:~# nano /etc/apache2/apache2.conf


Change
        HostnameLookups Off
        HostnameLookups On
        
Save Ctrl O the file  apache2.conf  and close Ctrl X the nano editor.

Change default folder


With older Linux distributions the default path after installation is:

/var/www/webalizer
root@raspberry:~# nano /etc/webalizer/webalizer.conf


Replace
        OutputDir /var/www/webalizer
            with
        OutputDir /var/www/html/stats
        

The folders /webalizer & /stats are quit common in the worldwide web. Since bad bots crawl the web for those known folders mostly to send you referrer spam, it is recommended to choose a different name and never submitted to search engines and listings. For the demonstrative purpose you read /stats here.


Save Ctrl O the file  webalizer.conf  and close Ctrl X the nano editor.


Essential: You have to make manually a directory named e.g.  stats  with FileZilla or any other FTP program on your Rasbpi web server underneath the directory  /html . Otherwise the Webalizer spits a bunch of error messages!


root@raspberry:~# cd /var/www/html
root@raspberry:~# mkdir stats


Remove the standard directory.


root@raspberry:~# cd /var/www
root@raspberry:~# rm -rf webalizer


Restart services


You made some modifications. Restart Apache before you test the Webalizer configuration.


root@raspberry:~# service apache2 restart


Initial test. You get the first evaluation data about the server usage in image and text.


root@raspberry:~# sudo /etc/cron.daily/webalizer


The server evaluation has filed and is now accessible under:


        http://yourdomain.tld/stats/index.html
        http://yourIP/stats/index.html
        

From now on CronD (software utility Cron is a time-based job scheduler in computer operating systems) does update automatically every 24 hours.


Statistics only showing one or two days


    Trouble shooting


Get version and configuration.


root@raspberry:~# webalizer -vV


In case the webalizer statistics of your website are only showing the last one or two days instead of all days since webalizer has been installed on your system, you have to activate incremental processing in the webalizer configuration file /etc/webalizer/webalizer.conf.


root@raspberry:~# nano /etc/webalizer/webalizer.conf


Uncomment and change the line


        #Incremental no 
        Incremental yes
        

Option Incremental if set to yes tells Webalizer only to process partial logs, and allows to rotate log files as much as you want without loss of information.

It's recommended to set this option always to yes.


Optional - flag package


Flag Argentina Flag Belgium Flag Denmark Flag UK United Kingdom Flag Norway Flag Spain Flag RSA South Africa Flag Australia Flag Cuba Flag France Flag Jamaica


Country flag graphics for display in generated reports (Top Total Countries). Based on the country flag graphics for geolocation support. You can download the origin flag package from Webalizer's homepage. Extract and place all files to /var/www/html/stats/flags .


root@raspberry:~# nano /etc/webalizer/webalizer.conf


Uncomment and change the line

        #CountryFlags no
        CountryFlags yes
        
It's more a graphical gimmick than a useful thingy.


        /<root>
        /var/www/html
        /var/www/html/stats
        /var/www/html/stats/flags
        

Update search engine referrers


          # The SearchEngine keywords allow specification of search engines and
          # their query strings on the URL.  These are used to locate and report
          # what search strings are used to find your site.  The first word is
          # a substring to match in the referrer field that identifies the search
          # engine, and the second is the URL variable used by that search engine
          # to define its search terms.
          

Search engine keywords will tell Webalizer how to extract the referrer strings that are useful for your keyword research. The default list is so what of outdated. Currently using an updated list.


root@raspberry:~# nano /etc/webalizer/webalizer.conf


          SearchEngine    google.         search
          SearchEngine    google.         q=
          SearchEngine    bing.com        q=
          SearchEngine    yahoo.          p=
          SearchEngine    aol.            query=
          SearchEngine    aolsearch.      q=
          SearchEngine    ask.            q=
          SearchEngine    eureka.com      Ntt=
          SearchEngine    lycos.          q=
          SearchEngine    excite.         q=
          SearchEngine    answers.        q=
          SearchEngine    webcrawler.     q=
          SearchEngine    infospace.      q=
          SearchEngine    baidu.          wd=
          SearchEngine    duckduckgo.     q=
          SearchEngine    startpage.com   ep=
          SearchEngine    archive.        query=
          SearchEngine    yandex.         search
          SearchEngine    search.         q=
          SearchEngine    dogpile.        q=
          SearchEngine    ixquick.com     ep=
          SearchEngine    info.           qkw=
          SearchEngine    wolframalpha.   i=
          SearchEngine    gigablast.com   q=
          SearchEngine    icq.            q=
          SearchEngine    looksmart.com   q=
          

... this is up to you ...


          AllReferrers  yes/no
          AllSearchStr  yes/no
          

Optional - update GeoDB.dat


Link to get the latest Geolocation database /usr/share/GeoDB provided by The Webalizer.
MrUnix GeoDB database via FTP-server, external link.


Upload GeoDB.dat to root an copy it to /usr/share/GeoDB


root@raspberry:~# cp GeoDB.dat /usr/share/GeoDB


Set in /etc/webalizer/webalizer.conf


        # The GeoDB option enables or disabled the use of the native
        # Webalizer GeoDB geolocation services.
        #GeoDB   yes/no
        #GeoDBDatabase   /usr/share/GeoDB/GeoDB.dat
        

and uncomment #GeoDB #GeoDBDatabase if wanted


Note: you can not deploy both Geo-databases at the same time.


Optional - update GeoIP.dat


Link to get the latest GeoLite database /usr/share/GeoIP provided by Maxmind.
Maxmind GeoIP database via direct download, external link.


Upload GeoIP.dat to root an copy it to /usr/share/GeoIP


root@raspberry:~# cp GeoIP.dat /usr/share/GeoIP


Set in /etc/webalizer/webalizer.conf


        # The GeoIP option enables or disables the use of geolocation
        # services provided by the GeoIP library (http://www.maxmind.com),
        # if available.
        #GeoIP  yes/no
        #GeoIPDatabase  /usr/share/GeoIP/GeoIP.dat
        

and uncomment #GeoIP #GeoIPDatabase if wanted


10-Jul 2017


CSS style sheet - personalized theme for Webalizer


It is possible to customize Webalizer's default outfit.


root@raspberry:~# nano /etc/webalizer/webalizer.conf


Scroll down and locate the section HTMLHead and add the link to your css.

HTMLHead <link rel="stylesheet" type="text/css" href="http://www.yourdomain.tld/stats.css">

Afterwards run once   sudo webalizer -d   and get the result.

          /* CSS style sheet removes awful borders from tables & cells */
table { border: 0px; margin-left: auto; margin-right: auto; width: 700px; padding: 5px; } td, tr, th { border: 0px; }

Webalizer logo PNG. Webalizer sample reports. Webalizer theme download.


Two actual demonstrations.


Yearly summary page by month.
Monthly summary page 2019.

You may download this CSS theme and personalize it for your needs.

root@raspberry:~# nano /etc/webalizer/webalizer.conf


        # The custom graph colors are defined here. Declare them
        # in the standard hexadecimal way (as HTML, without the '#')
        # If none are given, you will get the standard default colors.

        #ColorHit       00805C
        #ColorFile      0040FF
        #ColorSite      FF8000
        ColorKbyte      C11B17
        #ColorIKbyte    0080FF
        #ColorOKbyte    00E000
        ColorPage       87AFC7
        ColorVisit      FFDB58
        ColorMisc       87AFC7
        

10-Nov 2017


Language settings


Webalizer uses gettext, so it will generate statistics on the default locale of your system.


root@raspberry:~# locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
root@raspberry:#


Changing the default system locale:


root@raspberry:~# update-locale LANG=xx_XX.UTF-8


or shortwise via raspi-config:


root@raspberry:~# dpkg-reconfigure locale


Momentarily force Webalizer in another language simply changing the LANG:


root@raspberry:~# export LANG=xx_XX.UTF-8; webalizer


Languagexx_XX.UTF-8
  
Danishdk_DK.UTF-8
Dutchnl_NL.UTF-8
English-GBen_GB.UTF-8
English-USen_US.UTF-8
Finnishfi_FI.UTF-8
Frenchfr_FR.UTF-8
Germande_DE.UTF-8
Italianit_IT.UTF-8
Japaneseja_JP.UTF-8
Norwegianno_NO.UTF-8
Portuguesept_PT.UTF-8
Portuguese-BRApt_BR.UTF-8
Russianru_RU.UTF-8
Spanishes_ES.UTF-8
Swedishsv_SV.UTF-8

UTF-8 and UTF-16 encode exactly the same set of characters. UTF-16 uses uniformly 16 bits to represent a character; while UTF-8 uses 1, 2, or 3 bytes depending on the character, so that an ASCII character is represented still as 1 byte. The most recent web browsers support UTF-16.


17-Nov 2017


tux cheering penguin gif animatedThe job is done.

Hafenzoll 2019