![]() This model creates a logical hierarchy for configuration: 1Ī - local server defaults (apply to all sites)Īwstats.th.conf - configuration per website Finally, site-specific configuration lives in the nf file. Future versions may overwrite that file, so local server-wide changes should be made in, which will not be updated by future package updates. Here’s how this works: nf provides the default configuration from the upstream project and Ubuntu package maintainers. The configuration files are layed out like this: 1 AWStats configuration on Ubuntu utilizes a traditional package/distro/local hierarchy. The first thing we need to do is configure a site. I opted for the second, since I have prioritized hosting static content on my server. Dynamically, requested through a web server (with old-school cgi-bin style requests).Most people use AWStats in one of two ways: It’s up to you to configure how you’d like to use AWStats. AWStats is just a Perl script, and does not have a service or daemon that runs continuously. Once that completes completes, the tool is installed, but there’s more work to do. Some how-tos online mention additional steps for installing those Perl modules, but they’re available in Ubuntu through apt, so that one-liner should be all you need. ![]() $ sudo apt install awstats libgeo-ip-perl libgeo-ipfree-perlĪWStats is written in Perl and uses a few additional modules to perform IP-related lookups. Here are a few details about my setup:įirst, you’ll need to install awstats and a few supporting libraries: 1 AWStats Setupĭepending on your operating system and package manager, these instructions may differ slightly for you. However, I host my websites on a DigitalOcean (referral link) Droplet running Ubuntu these days, so it’s a little more hands-on. Surprisingly, I’ve never set it up by hand before AWStats has always just been a link in a cPanel on a virtual host I was using. There’s no Javascript and no cookies, which aligns well with how I want my sites to work. It also doesn’t require that I change anything on my website. It isn’t the most beautiful by today’s design standards, but it’s information-dense, with enough visual treatment to make it easy to use. What I really love about AWStats is that it’s pretty easy to set up and the analysis it produces is really useful. The first version was released in 2000, and has been a staple of most Linux-based managed hosting services since. AWStats BackgroundĪWStats is one of those old-school open source projects that feels like it has been around forever and continues to fulfill its promise exquisitely, which is absolutely true. īased on only this information, it’s possible to aggregate visitors by date, popular pages, common browsers, and geographic location of visitors. After that, it gets a little harder to decode if you’re unfamiliar with these types of files. If you look at that log entry, you might be able to deduce that there’s an IP address, a date, a URL and HTTP request method. (I’ve masked part of the IP address for the sake of the anonymous visitor’s privacy) Here’s an example of an entry from the log for this site: 1 Using the data in these columns, it’s possible to learn which pages a visitor viewed, where they came from, what kind of browser they used, and approximately where they are located geographically. These logs are very basic - just plain text files that capture information about every single request, delimited by pre-defined columns. Web servers are typically configured to log every request they serve. ![]() Log Analysis Historyīefore the days of tracking cookies, analytics platforms, and privacy-hostile website measurement, website maintainers used log file analysis tools to learn about their visitors. ![]() This entry will cover some history, as well as a brief overview of how I set things up on my server. As part of my recent blogging renaissance, I did some exploration in to how I could measure website traffic for this blog. mod_fcgid: stderr: \t\t made by require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('wp_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, =ĪuthUserFile /home/domain/domains//.awstats-htpasswdĪlias /dav /home/domain/domains/’ve used quite a few different web hosting providers over the years, and most of them offered some kind of log file analysis tool. mod_fcgid: stderr: \t\t\tWHERE tt.taxonomy IN ('wp_theme') AND t.name IN ('twentytwentyone-child') mod_fcgid: stderr: \t\t\tFROM wp_terms AS t INNER JOIN wp_term_taxonomy AS tt ON t.term_id = tt.term_id mod_fcgid: stderr: \t\t\tSELECT t.term_id Apache error log mod_fcgid: stderr: WordPress database error Table 'site.wp_terms' doesn't exist for query
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |