]> git.ipfire.org Git - thirdparty/AWStats.git/commitdiff
Updated documentation.
authoreldy <>
Sun, 14 Apr 2002 03:13:34 +0000 (03:13 +0000)
committereldy <>
Sun, 14 Apr 2002 03:13:34 +0000 (03:13 +0000)
docs/awstats_faq.html
docs/awstats_setup.html
wwwroot/cgi-bin/awstats.model.conf

index a9a8af5b071586d83d735ccdcee0a230aea06687..9a11e41494e9ee389c24aa39e6ea701163cd639e 100644 (file)
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
-<meta name="description" content="AWStats Documentation - FAQ page">
-<meta name="keywords" content="awstats, awstat, faq, error, errors, frequently, asked, questions, support, help, problems">
-<meta name="robots" content="index,follow">
-<meta name="title" content="AWStats Documentation - FAQs">
-<title>AWStats Documentation - FAQs</title>
-<link rel="stylesheet" href="styles.css" type="text/css">
-</head>
-
-<body topmargin=10 leftmargin=5>
-<!-- $Revision$ - $Author$ - $Date$ -->
-
-
-<table style="font: 10pt arial,helvetica,verdana" cellpadding=0 cellspacing=0 border=0 bgcolor=#FFFFFF width=100%>
-
-<!-- Large -->
-<tr style="font: 10pt arial,helvetica,verdana">
-<td bgcolor=#9999cc align=center><a href="/"><img src="images/awstats_logo4.png" border=0></a></td>
-<td bgcolor=#9999cc align=center>
-<br>
-<font style="font: 16pt Times;" color=#EEEEFF><b>AWStats logfile analyzer 4.0 Documentation</b></font><br>
-<br>
-</td>
-<td bgcolor=#9999cc align=center>
-&nbsp;
-</td>
-</tr>
-
-</table>
-
-
-<br><br><H1 style="font: 26px Times;">Frequently Asked Questions</H1>
-
-
-<br>
-<u>ABOUT QUESTIONS:</u><br>
-<ul>
-FAQ-ABO100 <a href="#SERVERSOS">Which web servers or operating systems are supported ?</a><br>
-FAQ-ABO150 <a href="#LOGFORMAT">Which log format can AWStats analyze ?</a><br>
-FAQ-ABO200 <a href="#LANG">Which languages are available ?</a><br>
-FAQ-ABO250 <a href="#PHPNUKE">Can AWStats be integrated with PHP Nuke ?</a><br>
-</ul>
-<br>
-
-<u>SETUP or ERROR QUESTIONS:</u><br>
-Here, you can find the most common questions and answers users have to install/setup AWStats.<br>
-<ul>
-FAQ-SET050 <a href="#MISSINGDOLLAR">Error "Missing $ on loop variable ..."</a><br>
-FAQ-SET100 <a href="#CGISOURCE">I see Perl script's source instead of its execution in my browser.</a><br>
-FAQ-SET150 <a href="#SPAWNERROR">Error "... couldn't spawn child process..." with Apache for windows.</a><br>
-FAQ-SET200 <a href="#INTERNAL">"Internal Error" or "Error 500" in a browser connecting to Apache.</a><br>
-FAQ-SET210 <a href="#SPEED">"Internal Error" after a long time in my browser (See FAQ-COM100 "AWStats speed/timeout problems").</a><br>
-FAQ-SET250 <a href="#PERSONALIZEDLOG">Log format setup or errors.</a><br>
-FAQ-SET260 <a href="#FTP">Setup for FTP server log files.</a><br>
-FAQ-SET280 <a href="#NOTSAMENUMBER">Error "Not same number of records of...".</a><br>
-FAQ-SET300 <a href="#COULDNOTOPEN">Error "Couldn't open file ..."</a><br>
-FAQ-SET350 <a href="#EMPTY_STATS">Empty or null statistics reported.</a><br>
-FAQ-SET450 <a href="#NO_ICON">No pictures/graphics shown.</a><br>
-FAQ-SET500 <a href="#BENCHMARK">Frequency to launch AWStats to update statistics (See FAQ-COM150 "Benchmark question").</a><br>
-FAQ-SET550 <a href="#CRONTAB">How to run AWStats frequently ?</a><br>
-FAQ-SET600 <a href="#EXCLUDEHOSTS">How to exclude my IP address (or whole subnet mask) from stats ?</a><br>
-</ul>
-<br>
-
-<u>COMMON SUPPORT QUESTIONS:</u><br>
-Here, you can find the most common questions and answers users have when using AWStats.<br>
-<ul>
-FAQ-COM100 <a href="#SPEED">AWStats speed/timeout problems.</a><br>
-FAQ-COM150 <a href="#BENCHMARK">Benchmark question.</a><br>
-FAQ-COM200 <a href="#DNS">How reverse DNS Lookup works, unresolved IP Addresses ?</a><br>
-FAQ-COM250 <a href="#DIFFERENT_RESULTS">Different results than other log analyzers (Webalizer, WUsage, wwwStats...).</a><br>
-FAQ-COM300 <a href="#DIFFERENCE_HOURS">Difference between local hour and AWStats reported hour.</a><br>
-FAQ-COM350 <a href="#OLDLOG">How can I process old log file ?</a><br>
-FAQ-COM400 <a href="#MULTILOG">How can I update my statistics when I use a load balancing system that splits my logs ?</a><br>
-FAQ-COM500 <a href="#RESET">How can I reset all my statistics ?</a><br>
-FAQ-COM550 <a href="#EDITHISTORY">Can I safely remove an line in AWStats history files (awstatsMMYYYY*.txt) ?</a><br>
-</ul>
-<br>
-
-<u>SECURITY QUESTIONS:</u><br>
-Here, you can find the common questions about security problems when setting or using AWStats.<br>
-<ul>
-FAQ-SEC100 <a href="#CSSATTACK">Can AWStats be used to make Cross Site Scripting Attacks ?</a><br>
-FAQ-SEC150 <a href="#SECUSER">How can I prevent some users to see statistics of other users ?</a><br>
-FAQ-SEC200 <a href="#WORMS">How to manage log files (and statistics) corrupted by worms attacks like 'Code Red Virus like'.</a><br>
-</ul>
-<br>
-
-<hr>
-<br><br>
-<a name="SERVERSOS"></a><br>
-<b><u>FAQ-ABO100 : WHICH WEB SERVER OR OS ARE SUPPORTED ?</u></b><br>
-AWStats can works with all web server able to write log file with a <u>combined log format (XLF/ELF)</u> like apache,
-a <u>common log format (CLF)</u> like Apache or Squid, an <u>W3C log format</u> like IIS 5.0 or higher (Some users have
-reported that you can setup your log format to W3C with IIS 4.0 but you need a service pack 6), and a lot of others
-Web/Wap/Proxy servers.<br>
-Because AWStats is in perl, it can works on all Operating Systems.<br>
-Examples of used platforms (bold means 'tested by author', others were reported by AWStats users to work correctly) :<br>
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>OS:</u><br>
-<b>Windows NT 4.0</b>, <b>Windows 2000</b>, Windows Me, <b>Linux</b>, Macintosh, <b>Solaris</b>, <b>Aix</b>, BeOS, ...<br>
-<u>Web/Wap/Proxy servers</u><br>
-<b>Apache</b>, <b>IIS 5.0</b>, WebStar, WebLogic, Squid, Roxen, IPlanet, IceCast, Zope, www4mail, ...<br>
-<u>Perl interpreters:</u><br>
-<b>ActivePerl 5.6</b>, <b>Perl for unix 5.0</b>, mod_perl for Apache, ...<br>
-</td></tr></table>
-<br>
-
-<a name="LOGFORMAT"></a><br>
-<b><u>FAQ-ABO150 : WHICH LOG FORMAT CAN AWSTATS ANALYZE ?</u></b><br>
-AWStats setup knows predefined log format you can use to make AWStats config easier. However,
-you can define your own log format, that's the reason why AWStats can analyze nearly all web, wap
-and proxy server log files. Some FTP servers are also supported.<br>
-The only requirement is "Your log file must contain required information".<br>
-This is example of possible log format:<br>
-<i>
-Apache combined log format (known as NCSA combined log format or XLF or ELF format) (See FAQ for this format)<br>
-IIS 5.0+ log format (known as W3C format)<br>
-Webstar native log format<br>
-ProFTP server<br>
-...<br>
-Apache common log format (AWStats can now analyze such log files but such log files does not contain all information
-AWStats is looking for. The problem is in the content, not in the format). I think analyzing common log files is not
-interesting because there is a lot of missing information: no way to filter robots, find search engines, keywords, os, browser.
-But a lot of users asked me for it, so AWStats support it. However, a lot of interesting advanced features can't work: browsers, os's, keywords, robot detection...).
-</i><br>
-See also <a href="#PERSONALIZEDLOG">F.A.Q.: LOG FORMAT SETUP OR ERRORS </a>.<br>
-<br>
-
-
-<a name="LANG"></a><br>
-<b><u>FAQ-ABO200 : WHICH LANGUAGES ARE AVAILABLE ?</u></b><br>
-AWStats can make reports in 27 languages. This is a list of all of them, for last version, in alphabetical order:<br>
-<i>
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-Bosnian=ba, Chinese (Taiwan)=tw, Chinese (Traditional)=cn, Czech=cz, Danish=dk,
-Dutch=nl, English=en, French=fr, German=de, Greek=gr, Hungarian=hu,
-Indonesian=id, Italian=it, Japanese=jp, Korean=kr, Latvian=lv, Norwegian (Nynorsk)=nn,
-Norwegian (Bokmal)=nb, Polish=pl, Portuguese=pt, Portuguese (Brazilian)=br,
-Romanian=ro, Russian=ru, Spanish=es, Swedish=se, Turkish=tr, Ukrainian=ua
-</td></tr></table>
-</i>
-However, AWStats documentation is only provided in English.<br>
-But, you can find some documentation made by contributors:<br>
-In French: <a href="http://www.funix.org/fr/linux/main-linux.php3?ref=logapache&page=menu" target_doc>How to install AWStats and Webalizer</a><br>
-<br>
-
-<a name="PHPNUKE"></a><br>
-<b><u>FAQ-ABO250 : CAN AWSTATS BE INTEGRATED WITH PHP NUKE ?</u></b><br>
-I don't know any plan to make an Add-On for PHPNuke to include AWStats, for the moment.
-But this can change. You should ask to have a such Add-On to PHPNuke authors, and on PHPNuke forums.<br>
-<br>
-
-
-<hr><br>
-
-
-<a name="MISSINGDOLLAR"></a><br>
-<b><u>FAQ-SET050 : ERROR "MISSING $ ON LOOP VARIABLE ..."</u></b><br>
-<font style="color: #660000">PROBLEM:</font>
-When I run awstats.pl from command line, I get:<br>
-<i>"Missing $ on loop variable at awstats.pl line xxx"</i><br>
-<font style="color: #4444cc">SOLUTION:</font>
-Problem is in your Perl interpreter. Try to install or reinstall a more recent/stable perl interpreter.<br>
-You can get new Perl version at <a href="http://www.activestate.com/ActivePerl/">ActivePerl</a> (<font color=#221188>Win32</font>)
-or <a href="http://www.perl.com/pub/language/info/software.html">Perl.com</a> (<font color=#221188>Unix/Linux/Other</font>).<br>
-<br>
-
-<a name="CGISOURCE"></a><br>
-<b><u>FAQ-SET100 : I SEE PERL SCRIPT'S SOURCE INSTEAD OF ITS EXECUTION</u></b><br>
-<font style="color: #660000">PROBLEM:</font>
-When I try to execute the perl script through the web server,
-I see the perl script's source instead of the HTML result page of its execution !<br>
-<font style="color: #4444cc">SOLUTION:</font>
-This is not a problem of AWStats but a problem in your web server setup.
-awstats.pl file must be in a directory defined in your web server to be a "cgi" directory,
-this means, a directory configured in your web server to contain "executable" files and
-not to documents files.
-You have to read your web server manual to know how to setup a directory to be an
-"executable cgi" directory (With IIS, you have some checkbox to check in directory
-properties, with apache you have to use the "ExecCGI" option in the directory "Directive").<br>
-<br>
-
-<a name="SPAWNERROR"></a><a name="INTERNAL"></a><br>
-<b><u>FAQ-SET150 & FAQ-SET200 : INTERNAL ERROR OR ERROR 500 IN MY BROWSER</u></b><br>
-<b><u>ERROR "... COULDN'T SPAWN CHILD PROCESS..." IN APACHE ERROR LOG</u></b><br>
-<font style="color: #660000">PROBLEM:</font>
-AWStats seems to run fine at the command prompt but when ran as a CGI from a browser, I get an<br>
-<i>"Internal Error"</i>.<br>
-Sometimes I get the following message in my error log file:<br>
-<i>[error] [client xx.xx.xx.xx] No such file or directory: couldn't spawn child process: c:/mywebroot/cgi-bin/awstats.pl</i><br>
-<font style="color: #4444cc">SOLUTION:</font>
-This problem occurs with Apache web server with no internal perl interpreter (mod_perl not
-active). To solve this, you must tell Apache where is your perl interpreter. For this, you have 2 solutions:<br>
-1) Change the first line of awstats.pl file with the full path of your perl interpreter.<br>
-Example with Windows OS and ActivePerl perl interpreter (installed in C:\Program Files\ActivePerl),
-you must change the first line of awstats.pl file with:<br>
-<i>#!c:/program files/activeperl/bin/perl</i><br>
-2) Other solution: Uncomment in your Apache httpd.conf config the following line (remove the # at the beginning)<br>
-<i>ScriptInterpreterSource registry</i><br>
-Then restart Apache. This will tell Apache to use the program associated to .pl extension in windows registry,
-to find the perl interpreter.<br>
-<br>
-
-<a name="PERSONALIZEDLOG"></a><br>
-<b><u>FAQ-SET250 : LOG FORMAT SETUP OR ERRORS</u></b><br>
-<font style="color: #660000">PROBLEM:</font> Which value do I have to put in the LogFormat
-parameter to make AWStats working with my log file format ?<br>
-<font style="color: #4444cc">SOLUTION:</font>
-The AWStats config file give you all possible values for LogFormat parameter.
-To help you, this is some common cases of log file format, and
-the corresponding value for LogFormat you must use in your AWStats config file:<br>
-
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>If your log records are EXACTLY like this (<b>NCSA combined/XLF/ELF</b> log format):</u><br>
-<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"</i><br>
-You must use : <i>LogFormat=1</i><br>
-</td></tr></table>
-
-<u>If your log records are EXACTLY like this (<b>NCSA combined</b> with <b>Apache using mod_gzip</b> format 1):</u><br>
-<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" mod_gzip: 66pct.</i><br>
-You must use : <i>LogFormat="%host %other %other %time1 %methodurl %code %bytesd %refererquot %uaquot %other %gzipratio"</i><br>
-
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>If your log records are EXACTLY like this (<b>NCSA combined</b> with <b>Apache using mod_gzip</b> format 2):</u><br>
-<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" mod_gzip: DECHUNK:OK In:11393 Out:3904:66pct.</i><br>
-You must use : <i>LogFormat="%host %other %other %time1 %methodurl %code %bytesd %refererquot %uaquot %other %other %gzipin %gzipout"</i><br>
-</td></tr></table>
-
-<u>If your log records are EXACTLY like this (<b>NCSA common CLF</b> log format):</u><br>
-<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234</i><br>
-You must use : <i>LogFormat=4</i><br>
-Note: Browsers, OS's, Keywords and Referers features are not available with a such format.<br>
-
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>If your log records are EXACTLY like this (<b>IIS</b> W3C log format):</u><br>
-<i>yyyy-mm-dd hh:mm:ss 62.161.78.73 - GET /page.html 200 1234 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) http://www.from.com/from.htm</i><br>
-You must use : <i>LogFormat=2</i><br>
-</td></tr></table>
-
-<u>If your log records are EXACTLY like this (With some providers):</u><br>
-<i>62.161.78.73 - - [dd/Month/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" "-" 200 1234</i><br>
-You must use : <i>LogFormat="%host %logname %other %time1 %methodurl %other %code %bytesd"</i><br>
-Note: Browsers, OS's, Keywords and Referers features are not available with a such format.<br>
-
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>If your log records are EXACTLY like this (<b>Webstar</b> native log format):</u><br>
-<i>05/21/00    00:17:31        OK      200     212.242.30.6    Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)  http://www.cover.dk/    "www.cover.dk"  :Documentation:graphics:starninelogo.white.gif  1133</i><br>
-You must use : <i>LogFormat=3</i><br>
-</td></tr></table>
-
-<u>If you use <b>ProFTP</b> server:</u><br>
-See Next FAQ.<br>
-
-<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>
-<u>There is a lot of other possible log formats.</u><br>
-You must use a personalized log format LogFormat ="..." as described in config file to
-support other various log formats.<br>
-</td></tr></table>
-<br>
-
-<a name="FTP"></a><br>
-<b><u>FAQ-SET260 : SETUP FOR FTP SERVER LOG FILES</u></b><br>
-<font style="color: #660000">PROBLEM:</font> What do I have to do to use AWStats to analyze some FTP server log files.<br>
-<font style="color: #4444cc">SOLUTION:</font>
-AWStats was built to analyze web,wap or proxy server's log files. However it can be used with some FTP server log files.<br>
-<u>This is example for ProFTP:</u><br>
-Modify the proftpd.conf file. At the very top add two new defines.<br>
-<i>LogFormat awstats "%t %h %u GET %f 200 %b"<br>
-ExtendedLog /var/log/xferlog read,write awstats</i><br>
-Turn off Transfer log (optional)<br>
-<i>TransferLog none</i><br>
-Copy config awstats.conf file to "awstats.proftp.conf".<br>
-Modify this new config file:<br>
-<i>LogFile="/var/log/xferlog"<br>
-LogFormat="%time1 %host %logname %method %url %code %bytesd"<br>
-DNSLookup=0</i><br>
-ShowLinksOnUrl=0<br>
-ShowAuthenticatedUsers=1<br>
-Warning: This tip doesn't work for FTPed files that contains spaces in them (they are not reported). You can still convert your
-log file to replace 'space' char into '_'...<br>
-<br>
-
-<a name="NOTSAMENUMBER"></a><br>
-<b><u>FAQ-SET280 : ERROR "NOT SAME NUMBER OF RECORDS OF..."</u></b><br>
-<font style="color: #660000">PROBLEM:</font> When I run AWStats from command line (or as a cgi from a browser), I get
-a message "Not same number of records of ...".<br>
-<font style="color: #4444cc">SOLUTION:</font>
-This means your AWStats reference database files (operating systems, browsers, robots...) are not correct.
-Check in your disk that you have only ONE of those files (They should be in 'db' directory where awstats.pl is installed):<br>
-<i>browsers.pl</i><br>
-<i>operating_systems.pl</i><br>
-<i>robots.pl</i><br>
-<i>domains.pl</i><br>
-<i>search_engines.pl</i><br>
-<br>
-
-<a name="COULDNOTOPEN"></a><br>
-<b><u>FAQ-SET300 : ERROR "COULDN'T OPEN FILE ..."</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I have the following error:<br>
-<i>"Couldn't open file /workingpath/awstatsmmyyyy.tmp.9999: Permission denied."</i><br>
-<font style="color: #4444cc">SOLUTION:</font> This error means that the web server 
-didn't succeed in writing the working temporary file (file ended by .tmp.9999 
-where 9999 is a number) because of permissions problems.<br>
-First check that the directory <i>/workingpath</i> has write permission for<br>
-user <u>nobody</u> (default used user by apache on linux systems)<br>
-or user <u>IUSR_<i>SERVERNAME</i></u> (default used user by IIS on NT).<br>
-With Unix, try with a path with no links.<br>
-With NT, you must check NTFS permissions if your directory is on a NTFS partition.<br>
-With IIS, there is also a write permission attribute, defined in directory properties 
-in your IIS setup, that you must check.<br>
-With IIS, if a default cgi-bin directory was created during IIS install, try to 
-put AWStats directly this directory.<br>
-If this still doesn't work, you can change the DirData parameter to say AWStats 
-that you want to use another directory (A directory you are sure that the default 
-user, used by web server process, can write into).<br>
-<br>
-
-<a name="EMPTY_STATS"></a><br>
-<b><u>FAQ-SET350 : EMPTY OR NULL STATISTICS REPORTED</u></b><br>
-<font style="color: #660000">PROBLEM:</font> AWStats seems to work but I'm not 
-getting any results. i get a statistics page that looks like i have no hits.<br>
-<font style="color: #4444cc">SOLUTION:</font> That's the most common problem you 
-can have and reason is simple: Your log file format setup is wrong.<br>
-<u>If you use Apache web server</u><br>
-The best way of working is to use the <i>"combined"</i> log format (See into the <b>README.TXT</b> file
-to know the way to change your apache server log from <i>"common"</i> log format into <i>"combined"</i>).
-Don't forget to stop apache, reset your log file and restart Apache to make change into combined
-effective. Then you must setup your AWStats config file with value <i>LogFormat=1</i>.<br>
-If you want to use another format, read the next FAQ to have examples of LogFile value according
-to log files format.<br>
-<u>If you use IIS server or Windows built-in web server</u><br>
-The Internet Information Server default W3C Extended Log Format will not work correctly with AWStats.
-To make it work correctly, start the IIS Snap-in, select the web site and look at it's Properties.
-Choose W3C Extended Log Format, then Properties, then the Tab Extended Properties and uncheck everything
-under Extended Properties. Once they are all unchecked, check off the list in the ReadMe file in the
-IIS section, "With IIS Server".
-You can also read the next FAQ to have examples of LogFormat value according to log files format.<br>
-<br>
-
-<a name="NO_ICON"></a><br>
-<b><u>FAQ-SET450 : NO PICTURES/GRAPHICS SHOWN</u></b><br>
-<font style="color: #660000">PROBLEM:</font> AWStats seems to work (all data and counters seem to be good)
-but I have no image shown.<br>
-<font style="color: #4444cc">SOLUTION:</font> With Apache web server, you might have
-troubles (no picture shown on stats page) if you use a directory called "icons" (because of Apache
-pre-defined "icons" alias directory), so use instead, for example, a directory called "icon"  with
-no s at the end (Rename your directory physically and change the DirIcons parameter in config file
-to reflect this change).<br>
-<br>
-
-<a name="CRONTAB"></a><br>
-<b><u>FAQ-SET550 : HOW TO RUN AWSTATS FREQUENTLY</u></b><br>
-<font style="color: #660000">PROBLEM:</font> AWStats must be ran frequently to update statistics.
-How can I do this ?<br>
-<font style="color: #4444cc">SOLUTION:</font><br>
-<u>With Windows</u>, you can use the internal task scheduler.
-The use of this tool is not an AWStats related problem, so please take a look at your Windows manual.
-Warning, if you use <i>"awstats.pl -config=mysite -update"</i> in your scheduled task, you might
-experience problem of failing task. Try this instead<br>
-<i>"C:\WINNT\system32\CMD.EXE /C C:\[awstats_path]\awstats.pl -config=mysite -update"</i><br>
-or<br>
-<i>"C:\[perl_path]\perl.exe C:\[awstats_path]\awstats.pl -config=mysite -update"</i><br>
-A lot of other scheduler (sharewares/freewares) are very good.<br>
-<u>With unix-like operating systems</u>, you can use the "crontab".<br>
-This is examples of lines you can add in the cron file (see your unix reference manual for cron) :<br>
-To run update every day at 04:00, use :<br>
-<i>0 4 * * * /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=mysite -update</i><br>
-To run update every hour, use :<br>
-<i>0 * * * * /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=mysite -update</i><br>
-<br>
-
-<a name="EXCLUDEHOSTS"></a><br>
-<b><u>FAQ-SET600 : HOW CAN I EXCLUDE MY IP ADDRESS (OR WHOLE SUBNET MASK) FROM STATS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I don't want to see my own IP address in the stats or I want to exclude counting
-visits from a whole subnet.<br>
-<font style="color: #4444cc">SOLUTION:</font><br>
-You must edit the config file to change the SkipHosts parameter.<br>
-For example, to exclude:<br>
-- your own IP address 123.123.123.123, use SkipHosts="123.123.123.123"<br>
-- the whole subnet 123.123.123.xxx, use SkipHosts="123.123.123"<br>
-- all sub hosts xxx.myintranet.com, use SkipHosts=".myintranet.com" (This one works only if DNS lookup is already done in your
-log file).<br>
-<br> 
-
-
-<hr><br>
-
-
-<a name="SPEED"></a><br>
-<b><u>FAQ-COM100 : AWSTATS SPEED/TIMEOUT PROBLEMS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> When I analyze large log files,
-processing times are very important (Update process from a browser
-returns a timeout/internal error after a long wait).
-Is there a setup or things to do to avoid this and increase speed ?<br>
-<font style="color: #4444cc">SOLUTION:</font> Yes. You really need to understand 
-how a log analyzer works to have good speed. There is also major setup changes 
-you can do to decrease your processing time.<br>
-- Launch AWStats more often (from crontab or a scheduler). More often you launch 
-AWStats, more faster is AWStats (because the less is the number of NEW lines in 
-log, since last run, to process). See the <a href="awstats_benchmark.html">Benchmark page</a> to
-get examples of launching frequency according to your web traffic<br>
-- You can disable <i>DNSLookup</i> in configure file (set <i>DNSLookup=0</i>) 
-<u>but this requires absolutely that hosts addresses in your log file are already 
-resolved</u> (need to setup your web server to do so). Speed can be increased 
-up by <b>2 to 50</b> times !<br>
-If you don't understand what is an "already resolved reverse DNS lookup", keep 
-this parameter to 1.<br>
-- If you use Apache, set <i>PurgeLogFile</i> to 1 (By default, to avoid bad surprise, 
-<i>PurgeLogFile</i> is 0 in configure file, but you can set it to 1 to ask AWStats 
-to purge the log file after processing it. This increase speed for next run).<br>
-- Use last AWStats version.<br>
-<br>
-
-<a name="BENCHMARK"></a><br>
-<b><u>FAQ-COM150 : BENCHMARK / FREQUENCY TO LAUNCH AWSTATS TO UPDATE STATISTICS</u></b><br>
-<font style="color: #660000">PROBLEM:</font> What is AWStats speed ?<br>
-<font style="color: #660000">PROBLEM:</font> What is the frequency to launch AWStats process to update my statistics ?<br>
-<font style="color: #4444cc">SOLUTION:</font>
-All benchmarks information and advice on frequency for update process are related into the <a href="awstats_benchmark.html">Benchmark page</a>.
-<br>
-
-
-<a name="DNS"></a><br>
-<b><u>FAQ-COM200 : HOW REVERSE DNS LOOKUP WORKS, UNRESOLVED IP ADDRESSES</u></b><br>
-<font style="color: #660000">PROBLEM:</font> The reported page AWStats shows me 
-has no hostnames, only IP addresses, countries reported are all "unknown".<br>
-<font style="color: #4444cc">SOLUTION:</font> When AWStats find an IP address 
-in your log file, it tries a reverse DNS lookup to find the hostname and domain 
-if the <i>DNSLookup</i> parameter, in your AWStats config file, is <i>DNSLookup=1</i> 
-(Default value). So, first, check if you have the good value. The <i>DNSLookup=0</i> 
-must be used only if your log file contains already resolved IP address. For example, 
-when you set up Apache with the <i>HostNameLookups=on</i> directive. When you 
-ask your web server to make itself the reverse DNS lookup to log hostname instead 
-of IP address, you will still find some IP addresses in your log file because 
-the reverse DNS lookup is not always possible. But if your web server fails in 
-it, AWStats will also fails (All reverse DNS lookups use the same system API). 
-So to avoid AWStats to make an already done lookup (with success or not), you 
-can set <i>DNSLookup=0</i> in AWStats config file. Since 2.23, because a lot of users
-don't know this option, when AWStats find an already resolved IP Address in your log 
-file, it disables itself the reverse DNS lookup because it means that reverse lookup 
-is already done in log file. If IIS or Apache has made one DNS lookup resolution 
-for one record in your log file, they must have done it for all the file. If 
-you find only few lines with hostnames and others with IP Address, it means your 
-web server failed in resolving them. Check your DNS reverse system with the <i>nslookup</i> 
-command (available on NT/2000 and Unix).<br>
-Apache users might be interesting in knowing there is a tool called <i>logresolve</i> with
-Apache distribution, that can convert a logfile with IP Addresses into a logfile with resolved hostnames.<br>
-<br>
-
-<a name="DIFFERENT_RESULTS"></a><br>
-<b><u>FAQ-COM250 : DIFFERENT RESULTS THAN OTHER ANALYZER</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I also use webalizer (or another 
-log analyzer) and it doesn't report the same results than AWStats. Why ?<br>
-<font style="color: #4444cc">SOLUTION:</font>
-If you compare AWStats results with an other log file analyzer, you will found some differences,
-sometimes very important. In fact, all analyzer (even AWStats) make "over reporting" because of the
-problem of proxy-servers and robots. However AWStats is one the most accurate and its "over reporting"
-is very low where all other analyzers, even the most famous, have a very high error rate (10% to 2x more than reality).<br>
-This is the most important reasons why you will find differences:<br>
-- Some dynamic pages generated by CGI programs are not counted by some analyzer (ie Webalizer) like
-a "Page" (but only like a "Hit") if CGI prog has not a .cgi extension, so they are not included
-correctly in their statistics. AWStats does not make this error and all CGI pages are pages.<br>
-- AWStats is the alone analyzer (that i know for the moment) able to detect robots visits.
-All other analyzers think it's a human visitor. This error make them to report more visits and visitors
-than reality. This does not happen with AWStats. When it tells "1 visitor", it means "1 human visitor".
-All robots hits are reported in the "Robots/Spiders visitors" chart.<br>
-- A lot of analyzer (ie webalizer) use the "Hits" to count visitors. This is not a good way of working :
-Some visitors use a lot of proxy servers to surf (ie: AOL users), this means it's possible that several
-hosts (with several IP addresses) are used to reach your site for only one visitor (ie: one proxy server download
-the page and 2 other servers download all images). Because of this, if stats of unique visitors are made on "hits",
-3 users are reported but it's wrong. So AWStats, like HitBox, considers only HTML "Pages" to count unique visitors.
-This decrease the error, not completely, because it's always possible that a proxy server download one HTML frame and
-another one download another frame, but this make the over-reporting of unique visitors less important.<br>
-There is also differences in log analyzers databases and algorithms that make details of results less or more accurate:<br>
-- AWStats has a larger browser, os and search engine database, so reports concerning this are more accurate.<br>
-- AWStats has url syntax rules to find keywords or keyphrases used to find your site, but AWStats has also
-an algorithm to detect keywords of unknown search engines with unknown url syntax rule.<br>
-<br>
-
-<a name="DIFFERENCE_HOURS"></a><br>
-<b><u>FAQ-COM300 : DIFFERENCE BETWEEN LOCAL HOURS AND AWSTATS REPORTED HOURS</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I use IIS and there's a difference 
-between local hour and AWStats reported hour. For example I made a hit on a page 
-at 4:00 and AWStats report I hit it at 2:00.<br>
-<font style="color: #4444cc">SOLUTION:</font> This is not a problem of time 
-in your local client host. AWStats use only time reported in logs by your server 
-and all time are related to server hour. The problem is that IIS in some foreign 
-versions puts GMT time in its log file (and not local time). So, you have also 
-GMT time in your statistics.<br>
-You can do nothing, for the moment, but waiting that Microsoft change this in next
-IIS versions. However, Microsoft sheet Q271196 "IIS Log File Entries 
-Have the Incorrect Date and Time Stamp" says: <br>
-<i>The selected log file format is the W3C Extended Log File 
-Format. The extended log file format is defined in the W3C 
-Working Draft WD-logfile-960323 specification by Phillip 
-M. Hallam-Baker and Brian Behlendorf. This document defines 
-the Date and Time files to always be in GMT. This behavior 
-is by design.</i><br>
-So this means this way of working might never be changed.<br>
-<br>
-
-<a name="OLDLOG"></a><br>
-<b><u>FAQ-COM350 : HOW CAN I PROCESS OLD LOG FILE ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I want to process an old log file to include its data in my AWStats reports.<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-You must change your LogFile parameter to point to the old log file and run the update. However the update process can only accept
-files in chronological order, so if you have already processed a recent file, you must before
-reset all your statistics (see next FAQ) and restart all the update process for all past log files and in chronological order.<br>
-<br>
-
-<a name="MULTILOG"></a><br>
-<b><u>FAQ-COM400 : HOW CAN I UPDATE MY STATISTICS WHEN I USE A LOAD BALANCING SYSTEM THAT SPLITS MY LOGS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> How can I update my statistics when i use a load balancing system that split my logs ?<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-The best solution is to merge all split log files resulted from all your load balanced servers into one. For this, you can use
-the <b>logresolvemerge</b> tool provided with AWStats since version 3.2 :<br>
-<i>logresolvemerge.pl file1.log file2.log ... filen.log > newfiletoprocess.log</i><br>
-And setup the <i>LogFile</i> parameter in your config file to process the <i>newfiletoprocess.log</i> file.<br>
-<br>
-
-<a name="RESET"></a><br>
-<b><u>FAQ-COM500 : HOW CAN I RESET ALL MY STATISTICS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I want to reset all my statistics and restart my stats from now.<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-All analyzed data are stored by AWStats in files called awstatsMMYYYY.[site.]txt (one file each month).
-You will find those files in directory defined by "DirData" parameter (same directory than awstats.pl by default).<br>
-To reset your stats for a month, you just have to delete the file for the required month/year.<br>
-To reset all your stats, delete all files awstats*.txt<br>
-Warning, if you delete those data files, you won't be able to recover your stats back, unless you kept old log files somewhere.
-You will have to process all past log files (in chronological order) to get old statistics back.<br>
-<br>
-
-<a name="EDITHISTORY"></a><br>
-<b><u>FAQ-COM550 : CAN I SAFELY REMOVE A LINE IN HISTORY FILES (awstatsMMYYYY*.txt) ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> After processing a log file I want to change my statistics
-without running AWStats update process but changing directly data in AWStats historical database files.<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-If you remove a lines starting with "BEGIN_" or "END_", AWStats will find your file "corrupted" so you must not change those
-kind of lines. All lines that are not in any "section" (between a BEGIN_xxx and END_xxx line) should also not be removed.
-However you can change any line that is a "section record", but you do this at your own risk. Your reported stats
-might have wrong values after that.<br>
-<br>
-
-<hr><br>
-
-<a name="CSSATTACK"></a><br>
-<b><u>FAQ-SEC00 : CAN AWSTATS BE USED TO MAKE CROSS SITE SCRIPTING ATTACKS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> If a bad user use a browser to make a hit on an URL that include a < SCRIPT > ... < /SCRIPT >
-section in its parameter, when AWStats will show the links on the report page, does the script will be executed ?<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-No. AWStats use a filter to remove all scripts codes that was included in an URL to make a Cross Site Scripting Attack using a
-log analyzer report page.<br>
-<br>
-
-<a name="SECUSER"></a><br>
-<b><u>FAQ-SEC150 : HOW CAN I PREVENT SOME USERS TO SEE STATISTICS OF OTHER USERS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> I don't want a user xxx (having a site www.xxx.com) to see statistics of user yyy (having
-a site www.yyy.com). How can i setup AWStats for this ?<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-Take a look at the <a href="awstats_security.html">security page</a>.<br>
-<br>
-
-<a name="WORMS"></a><br>
-<b><u>FAQ-SEC200 : HOW TO MANAGE LOG FILES (AND STATISTICS) CORRUPTED BY 'CODE RED VIRUS LIKE' ATTACKS ?</u></b><br>
-<font style="color: #660000">PROBLEM:</font> My site is attacked by some Code Red Viruses. This make my log file corrupted
-and full of 404 errors. So my statistics are also full of 404 errors. This make AWStats slower and my history files very large.
-Can I do something to avoid this ?<br>
-<font style="color: #4444cc">SOLUTION:</font> 
-Yes.<br>
-'Code Red virus like' attacks are infected browsers or robots that make hits on your site using a very long unknown URL
-like this one (hoping your server is IIS):<br>
-<i>/default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%40%50...%40%50</i><br>
-URL is generated by the infected robot and the purpose is to exploit a vulnerability of the web server (only IIS is concerned by Code Red worm).
-So you will often find a 'common string' in those URLs. For example, with Code Red worm, there is always default.ida in the URL string.
-So, you should edit your config file to add in the SkipFiles parameter the following value:<br>
-<i>SkipFiles="default.ida"</i><br>
-<br>
-
-
-<hr>
-<script language=javascript>
-       var lastmod = new Date(document.lastModified);
-       if (lastmod.getDate() > 0) {
-               if (lastmod.getDate()<10) zerod="0"
-               else zerod="";
-               if (lastmod.getMonth()<9) zerom="0"
-               else zerom=""
-               year2kok=lastmod.getYear();
-               if (year2kok<100) year2kok+=2000;
-               if ((year2kok>=100) && (year2kok < 1970)) year2kok+=1900;
-               document.writeln("Last revision: "+year2kok+"-"+zerom+(lastmod.getMonth()+1)+"-"+zerod+lastmod.getDate());
-       }
-</script>
-
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
+<html>\r
+<head>\r
+<meta name="description" content="AWStats Documentation - FAQ page">\r
+<meta name="keywords" content="awstats, awstat, faq, error, errors, frequently, asked, questions, support, help, problems">\r
+<meta name="robots" content="index,follow">\r
+<meta name="title" content="AWStats Documentation - FAQs">\r
+<title>AWStats Documentation - FAQs</title>\r
+<link rel="stylesheet" href="styles.css" type="text/css">\r
+</head>\r
+\r
+<body topmargin=10 leftmargin=5>\r
+<!-- $Revision$ - $Author$ - $Date$ -->\r
+\r
+\r
+<table style="font: 10pt arial,helvetica,verdana" cellpadding=0 cellspacing=0 border=0 bgcolor=#FFFFFF width=100%>\r
+\r
+<!-- Large -->\r
+<tr style="font: 10pt arial,helvetica,verdana">\r
+<td bgcolor=#9999cc align=center><a href="/"><img src="images/awstats_logo4.png" border=0></a></td>\r
+<td bgcolor=#9999cc align=center>\r
+<br>\r
+<font style="font: 16pt Times;" color=#EEEEFF><b>AWStats logfile analyzer 4.0 Documentation</b></font><br>\r
+<br>\r
+</td>\r
+<td bgcolor=#9999cc align=center>\r
+&nbsp;\r
+</td>\r
+</tr>\r
+\r
+</table>\r
+\r
+\r
+<br><br><H1 style="font: 26px Times;">Frequently Asked Questions</H1>\r
+\r
+\r
+<br>\r
+<u>ABOUT QUESTIONS:</u><br>\r
+<ul>\r
+FAQ-ABO100 <a href="#SERVERSOS">Which web servers or operating systems are supported ?</a><br>\r
+FAQ-ABO150 <a href="#LOGFORMAT">Which log format can AWStats analyze ?</a><br>\r
+FAQ-ABO200 <a href="#LANG">Which languages are available ?</a><br>\r
+FAQ-ABO250 <a href="#PHPNUKE">Can AWStats be integrated with PHP Nuke ?</a><br>\r
+</ul>\r
+<br>\r
+\r
+<u>SETUP or ERROR QUESTIONS:</u><br>\r
+Here, you can find the most common questions and answers users have to install/setup AWStats.<br>\r
+<ul>\r
+FAQ-SET050 <a href="#MISSINGDOLLAR">Error "Missing $ on loop variable ..."</a><br>\r
+FAQ-SET100 <a href="#CGISOURCE">I see Perl script's source instead of its execution in my browser.</a><br>\r
+FAQ-SET150 <a href="#SPAWNERROR">Error "... couldn't spawn child process..." with Apache for windows.</a><br>\r
+FAQ-SET200 <a href="#INTERNAL">"Internal Error" or "Error 500" in a browser connecting to Apache.</a><br>\r
+FAQ-SET210 <a href="#SPEED">"Internal Error" after a long time in my browser (See FAQ-COM100 "AWStats speed/timeout problems").</a><br>\r
+FAQ-SET250 <a href="#PERSONALIZEDLOG">Log format setup or errors.</a><br>\r
+FAQ-SET260 <a href="#FTP">Setup for FTP server log files.</a><br>\r
+FAQ-SET280 <a href="#NOTSAMENUMBER">Error "Not same number of records of...".</a><br>\r
+FAQ-SET300 <a href="#COULDNOTOPEN">Error "Couldn't open file ..."</a><br>\r
+FAQ-SET350 <a href="#EMPTY_STATS">Empty or null statistics reported.</a><br>\r
+FAQ-SET450 <a href="#NO_ICON">No pictures/graphics shown.</a><br>\r
+FAQ-SET500 <a href="#BENCHMARK">Frequency to launch AWStats to update statistics (See FAQ-COM150 "Benchmark question").</a><br>\r
+FAQ-SET550 <a href="#CRONTAB">How to run AWStats frequently ?</a><br>\r
+FAQ-SET600 <a href="#EXCLUDEHOSTS">How to exclude my IP address (or whole subnet mask) from stats ?</a><br>\r
+</ul>\r
+<br>\r
+\r
+<u>COMMON SUPPORT QUESTIONS:</u><br>\r
+Here, you can find the most common questions and answers users have when using AWStats.<br>\r
+<ul>\r
+FAQ-COM100 <a href="#SPEED">AWStats speed/timeout problems.</a><br>\r
+FAQ-COM150 <a href="#BENCHMARK">Benchmark question.</a><br>\r
+FAQ-COM200 <a href="#DNS">How reverse DNS Lookup works, unresolved IP Addresses ?</a><br>\r
+FAQ-COM250 <a href="#DIFFERENT_RESULTS">Different results than other log analyzers (Webalizer, WUsage, wwwStats...).</a><br>\r
+FAQ-COM300 <a href="#DIFFERENCE_HOURS">Difference between local hour and AWStats reported hour.</a><br>\r
+FAQ-COM350 <a href="#OLDLOG">How can I process old log file ?</a><br>\r
+FAQ-COM400 <a href="#MULTILOG">How can I update my statistics when I use a load balancing system that splits my logs ?</a><br>\r
+FAQ-COM500 <a href="#RESET">How can I reset all my statistics ?</a><br>\r
+FAQ-COM550 <a href="#EDITHISTORY">Can I safely remove an line in AWStats history files (awstatsMMYYYY*.txt) ?</a><br>\r
+</ul>\r
+<br>\r
+\r
+<u>SECURITY QUESTIONS:</u><br>\r
+Here, you can find the common questions about security problems when setting or using AWStats.<br>\r
+<ul>\r
+FAQ-SEC100 <a href="#CSSATTACK">Can AWStats be used to make Cross Site Scripting Attacks ?</a><br>\r
+FAQ-SEC150 <a href="#SECUSER">How can I prevent some users to see statistics of other users ?</a><br>\r
+FAQ-SEC200 <a href="#WORMS">How to manage log files (and statistics) corrupted by worms attacks like 'Code Red Virus like'.</a><br>\r
+</ul>\r
+<br>\r
+\r
+<hr>\r
+<br><br>\r
+<a name="SERVERSOS"></a><br>\r
+<b><u>FAQ-ABO100 : WHICH WEB SERVER OR OS ARE SUPPORTED ?</u></b><br>\r
+AWStats can works with all web server able to write log file with a <u>combined log format (XLF/ELF)</u> like apache,\r
+a <u>common log format (CLF)</u> like Apache or Squid, an <u>W3C log format</u> like IIS 5.0 or higher (Some users have\r
+reported that you can setup your log format to W3C with IIS 4.0 but you need a service pack 6), and a lot of others\r
+Web/Wap/Proxy servers.<br>\r
+Because AWStats is in perl, it can works on all Operating Systems.<br>\r
+Examples of used platforms (bold means 'tested by author', others were reported by AWStats users to work correctly) :<br>\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>OS:</u><br>\r
+<b>Windows NT 4.0</b>, <b>Windows 2000</b>, Windows Me, <b>Linux</b>, Macintosh, <b>Solaris</b>, <b>Aix</b>, BeOS, ...<br>\r
+<u>Web/Wap/Proxy servers</u><br>\r
+<b>Apache</b>, <b>IIS 5.0</b>, WebStar, WebLogic, Squid, Roxen, IPlanet, IceCast, Zope, www4mail, ...<br>\r
+<u>Perl interpreters:</u><br>\r
+<b>ActivePerl 5.6</b>, <b>Perl for unix 5.0</b>, mod_perl for Apache, ...<br>\r
+</td></tr></table>\r
+<br>\r
+\r
+<a name="LOGFORMAT"></a><br>\r
+<b><u>FAQ-ABO150 : WHICH LOG FORMAT CAN AWSTATS ANALYZE ?</u></b><br>\r
+AWStats setup knows predefined log format you can use to make AWStats config easier. However,\r
+you can define your own log format, that's the reason why AWStats can analyze nearly all web, wap\r
+and proxy server log files. Some FTP servers are also supported.<br>\r
+The only requirement is "Your log file must contain required information".<br>\r
+This is example of possible log format:<br>\r
+<i>\r
+Apache combined log format (known as NCSA combined log format or XLF or ELF format) (See FAQ for this format)<br>\r
+IIS 5.0+ log format (known as W3C format)<br>\r
+Webstar native log format<br>\r
+ProFTP server<br>\r
+...<br>\r
+Apache common log format (AWStats can now analyze such log files but such log files does not contain all information\r
+AWStats is looking for. The problem is in the content, not in the format). I think analyzing common log files is not\r
+interesting because there is a lot of missing information: no way to filter robots, find search engines, keywords, os, browser.\r
+But a lot of users asked me for it, so AWStats support it. However, a lot of interesting advanced features can't work: browsers, os's, keywords, robot detection...).\r
+</i><br>\r
+See also <a href="#PERSONALIZEDLOG">F.A.Q.: LOG FORMAT SETUP OR ERRORS </a>.<br>\r
+<br>\r
+\r
+\r
+<a name="LANG"></a><br>\r
+<b><u>FAQ-ABO200 : WHICH LANGUAGES ARE AVAILABLE ?</u></b><br>\r
+AWStats can make reports in 27 languages. This is a list of all of them, for last version, in alphabetical order:<br>\r
+<i>\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+Bosnian=ba, Chinese (Taiwan)=tw, Chinese (Traditional)=cn, Czech=cz, Danish=dk,\r
+Dutch=nl, English=en, French=fr, German=de, Greek=gr, Hungarian=hu,\r
+Indonesian=id, Italian=it, Japanese=jp, Korean=kr, Latvian=lv, Norwegian (Nynorsk)=nn,\r
+Norwegian (Bokmal)=nb, Polish=pl, Portuguese=pt, Portuguese (Brazilian)=br,\r
+Romanian=ro, Russian=ru, Spanish=es, Swedish=se, Turkish=tr, Ukrainian=ua\r
+</td></tr></table>\r
+</i>\r
+However, AWStats documentation is only provided in English.<br>\r
+But, you can find some documentation made by contributors:<br>\r
+In French: <a href="http://www.funix.org/fr/linux/main-linux.php3?ref=logapache&page=menu" target_doc>How to install AWStats and Webalizer</a><br>\r
+<br>\r
+\r
+<a name="PHPNUKE"></a><br>\r
+<b><u>FAQ-ABO250 : CAN AWSTATS BE INTEGRATED WITH PHP NUKE ?</u></b><br>\r
+I don't know any plan to make an Add-On for PHPNuke to include AWStats, for the moment.\r
+But this can change. You should ask to have a such Add-On to PHPNuke authors, and on PHPNuke forums.<br>\r
+<br>\r
+\r
+\r
+<hr><br>\r
+\r
+\r
+<a name="MISSINGDOLLAR"></a><br>\r
+<b><u>FAQ-SET050 : ERROR "MISSING $ ON LOOP VARIABLE ..."</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font>\r
+When I run awstats.pl from command line, I get:<br>\r
+<i>"Missing $ on loop variable at awstats.pl line xxx"</i><br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+Problem is in your Perl interpreter. Try to install or reinstall a more recent/stable perl interpreter.<br>\r
+You can get new Perl version at <a href="http://www.activestate.com/ActivePerl/">ActivePerl</a> (<font color=#221188>Win32</font>)\r
+or <a href="http://www.perl.com/pub/language/info/software.html">Perl.com</a> (<font color=#221188>Unix/Linux/Other</font>).<br>\r
+<br>\r
+\r
+<a name="CGISOURCE"></a><br>\r
+<b><u>FAQ-SET100 : I SEE PERL SCRIPT'S SOURCE INSTEAD OF ITS EXECUTION</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font>\r
+When I try to execute the perl script through the web server,\r
+I see the perl script's source instead of the HTML result page of its execution !<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+This is not a problem of AWStats but a problem in your web server setup.\r
+awstats.pl file must be in a directory defined in your web server to be a "cgi" directory,\r
+this means, a directory configured in your web server to contain "executable" files and\r
+not to documents files.\r
+You have to read your web server manual to know how to setup a directory to be an\r
+"executable cgi" directory (With IIS, you have some checkbox to check in directory\r
+properties, with apache you have to use the "ExecCGI" option in the directory "Directive").<br>\r
+<br>\r
+\r
+<a name="SPAWNERROR"></a><a name="INTERNAL"></a><br>\r
+<b><u>FAQ-SET150 & FAQ-SET200 : INTERNAL ERROR OR ERROR 500 IN MY BROWSER</u></b><br>\r
+<b><u>ERROR "... COULDN'T SPAWN CHILD PROCESS..." IN APACHE ERROR LOG</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font>\r
+AWStats seems to run fine at the command prompt but when ran as a CGI from a browser, I get an<br>\r
+<i>"Internal Error"</i>.<br>\r
+Sometimes I get the following message in my error log file:<br>\r
+<i>[error] [client xx.xx.xx.xx] No such file or directory: couldn't spawn child process: c:/mywebroot/cgi-bin/awstats.pl</i><br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+This problem occurs with Apache web server with no internal perl interpreter (mod_perl not\r
+active). To solve this, you must tell Apache where is your perl interpreter. For this, you have 2 solutions:<br>\r
+1) Change the first line of awstats.pl file with the full path of your perl interpreter.<br>\r
+Example with Windows OS and ActivePerl perl interpreter (installed in C:\Program Files\ActivePerl),\r
+you must change the first line of awstats.pl file with:<br>\r
+<i>#!c:/program files/activeperl/bin/perl</i><br>\r
+2) Other solution: Uncomment in your Apache httpd.conf config the following line (remove the # at the beginning)<br>\r
+<i>ScriptInterpreterSource registry</i><br>\r
+Then restart Apache. This will tell Apache to use the program associated to .pl extension in windows registry,\r
+to find the perl interpreter.<br>\r
+<br>\r
+\r
+<a name="PERSONALIZEDLOG"></a><br>\r
+<b><u>FAQ-SET250 : LOG FORMAT SETUP OR ERRORS</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> Which value do I have to put in the LogFormat\r
+parameter to make AWStats working with my log file format ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+The AWStats config file give you all possible values for LogFormat parameter.\r
+To help you, this is some common cases of log file format, and\r
+the corresponding value for LogFormat you must use in your AWStats config file:<br>\r
+\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>If your log records are EXACTLY like this (<b>NCSA combined/XLF/ELF</b> log format):</u><br>\r
+<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"</i><br>\r
+You must use : <i>LogFormat=1</i><br>\r
+</td></tr></table>\r
+\r
+<u>If your log records are EXACTLY like this (<b>NCSA combined</b> with <b>Apache using mod_gzip</b> format 1):</u><br>\r
+<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" mod_gzip: 66pct.</i><br>\r
+You must use : <i>LogFormat="%host %other %other %time1 %methodurl %code %bytesd %refererquot %uaquot %other %gzipratio"</i><br>\r
+\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>If your log records are EXACTLY like this (<b>NCSA combined</b> with <b>Apache using mod_gzip</b> format 2):</u><br>\r
+<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234 "http://www.from.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" mod_gzip: DECHUNK:OK In:11393 Out:3904:66pct.</i><br>\r
+You must use : <i>LogFormat="%host %other %other %time1 %methodurl %code %bytesd %refererquot %uaquot %other %other %gzipin %gzipout"</i><br>\r
+</td></tr></table>\r
+\r
+<u>If your log records are EXACTLY like this (<b>NCSA common CLF</b> log format):</u><br>\r
+<i>62.161.78.73 - - [dd/mmm/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" 200 1234</i><br>\r
+You must use : <i>LogFormat=4</i><br>\r
+Note: Browsers, OS's, Keywords and Referers features are not available with a such format.<br>\r
+\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>If your log records are EXACTLY like this (<b>IIS</b> W3C log format):</u><br>\r
+<i>yyyy-mm-dd hh:mm:ss 62.161.78.73 - GET /page.html 200 1234 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) http://www.from.com/from.htm</i><br>\r
+You must use : <i>LogFormat=2</i><br>\r
+</td></tr></table>\r
+\r
+<u>If your log records are EXACTLY like this (With some providers):</u><br>\r
+<i>62.161.78.73 - - [dd/Month/yyyy:hh:mm:ss +0x00] "GET /page.html HTTP/1.1" "-" 200 1234</i><br>\r
+You must use : <i>LogFormat="%host %logname %other %time1 %methodurl %other %code %bytesd"</i><br>\r
+Note: Browsers, OS's, Keywords and Referers features are not available with a such format.<br>\r
+\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>If your log records are EXACTLY like this (<b>Webstar</b> native log format):</u><br>\r
+<i>05/21/00    00:17:31        OK      200     212.242.30.6    Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)  http://www.cover.dk/    "www.cover.dk"  :Documentation:graphics:starninelogo.white.gif  1133</i><br>\r
+You must use : <i>LogFormat=3</i><br>\r
+</td></tr></table>\r
+\r
+<u>If you use <b>ProFTP</b> server:</u><br>\r
+See Next FAQ.<br>\r
+\r
+<table bgcolor=#F0F0F0 width="100%" class=CFAQ><tr class=CFAQ><td class=CFAQ>\r
+<u>There is a lot of other possible log formats.</u><br>\r
+You must use a personalized log format LogFormat ="..." as described in config file to\r
+support other various log formats.<br>\r
+</td></tr></table>\r
+<br>\r
+\r
+<a name="FTP"></a><br>\r
+<b><u>FAQ-SET260 : SETUP FOR FTP SERVER LOG FILES</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> What do I have to do to use AWStats to analyze some FTP server log files.<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+AWStats was built to analyze web,wap or proxy server's log files. However it can be used with some FTP server log files.<br>\r
+<u>This is example for ProFTP:</u><br>\r
+Modify the proftpd.conf file. At the very top add two new defines.<br>\r
+<i>LogFormat awstats "%t %h %u GET %f 200 %b"<br>\r
+ExtendedLog /var/log/xferlog read,write awstats</i><br>\r
+Turn off Transfer log (optional)<br>\r
+<i>TransferLog none</i><br>\r
+Copy config awstats.conf file to "awstats.proftp.conf".<br>\r
+Modify this new config file:<br>\r
+<i>LogFile="/var/log/xferlog"<br>\r
+LogFormat="%time1 %host %logname %method %url %code %bytesd"<br>\r
+DNSLookup=0</i><br>\r
+ShowLinksOnUrl=0<br>\r
+ShowAuthenticatedUsers=1<br>\r
+Warning: This tip doesn't work for FTPed files that contains spaces in them (they are not reported). You can still convert your\r
+log file to replace 'space' char into '_'...<br>\r
+<br>\r
+\r
+<a name="NOTSAMENUMBER"></a><br>\r
+<b><u>FAQ-SET280 : ERROR "NOT SAME NUMBER OF RECORDS OF..."</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> When I run AWStats from command line (or as a cgi from a browser), I get\r
+a message "Not same number of records of ...".<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+This means your AWStats reference database files (operating systems, browsers, robots...) are not correct.\r
+Check in your disk that you have only ONE of those files (They should be in 'db' directory where awstats.pl is installed):<br>\r
+<i>browsers.pl</i><br>\r
+<i>operating_systems.pl</i><br>\r
+<i>robots.pl</i><br>\r
+<i>domains.pl</i><br>\r
+<i>search_engines.pl</i><br>\r
+<br>\r
+\r
+<a name="COULDNOTOPEN"></a><br>\r
+<b><u>FAQ-SET300 : ERROR "COULDN'T OPEN FILE ..."</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I have the following error:<br>\r
+<i>"Couldn't open file /workingpath/awstatsmmyyyy.tmp.9999: Permission denied."</i><br>\r
+<font style="color: #4444cc">SOLUTION:</font> This error means that the web server \r
+didn't succeed in writing the working temporary file (file ended by .tmp.9999 \r
+where 9999 is a number) because of permissions problems.<br>\r
+First check that the directory <i>/workingpath</i> has "Write" permission for<br>\r
+user <u>nobody</u> (default user used by apache on Linux systems)<br>\r
+or user <u>IUSR_<i>SERVERNAME</i></u> (default used user by IIS on NT).<br>\r
+With Unix, try with a path with no links.<br>\r
+With NT, you must check NTFS permissions ("Read/Write/Modify"), if your directory is on a NTFS partition.<br>\r
+With IIS, there is also a "Write" permission attribute, defined in directory properties \r
+in your IIS setup, that you must check.<br>\r
+With IIS, if a default cgi-bin directory was created during IIS install, try to \r
+put AWStats directly into this directory.<br>\r
+If this still fails, you can change the DirData parameter to say AWStats \r
+that you want to use another directory (A directory you are sure that the default \r
+user, used by web server process, can write into).<br>\r
+<br>\r
+\r
+<a name="EMPTY_STATS"></a><br>\r
+<b><u>FAQ-SET350 : EMPTY OR NULL STATISTICS REPORTED</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> AWStats seems to work but I'm not \r
+getting any results. i get a statistics page that looks like i have no hits.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> That's the most common problem you \r
+can have and reason is simple: Your log file format setup is wrong.<br>\r
+<u>If you use Apache web server</u><br>\r
+The best way of working is to use the <i>"combined"</i> log format (See into the <b>README.TXT</b> file\r
+to know the way to change your apache server log from <i>"common"</i> log format into <i>"combined"</i>).\r
+Don't forget to stop apache, reset your log file and restart Apache to make change into combined\r
+effective. Then you must setup your AWStats config file with value <i>LogFormat=1</i>.<br>\r
+If you want to use another format, read the next FAQ to have examples of LogFile value according\r
+to log files format.<br>\r
+<u>If you use IIS server or Windows built-in web server</u><br>\r
+The Internet Information Server default W3C Extended Log Format will not work correctly with AWStats.\r
+To make it work correctly, start the IIS Snap-in, select the web site and look at it's Properties.\r
+Choose W3C Extended Log Format, then Properties, then the Tab Extended Properties and uncheck everything\r
+under Extended Properties. Once they are all unchecked, check off the list in the ReadMe file in the\r
+IIS section, "With IIS Server".\r
+You can also read the next FAQ to have examples of LogFormat value according to log files format.<br>\r
+<br>\r
+\r
+<a name="NO_ICON"></a><br>\r
+<b><u>FAQ-SET450 : NO PICTURES/GRAPHICS SHOWN</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> AWStats seems to work (all data and counters seem to be good)\r
+but I have no image shown.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> With Apache web server, you might have\r
+troubles (no picture shown on stats page) if you use a directory called "icons" (because of Apache\r
+pre-defined "icons" alias directory), so use instead, for example, a directory called "icon"  with\r
+no s at the end (Rename your directory physically and change the DirIcons parameter in config file\r
+to reflect this change).<br>\r
+<br>\r
+\r
+<a name="CRONTAB"></a><br>\r
+<b><u>FAQ-SET550 : HOW TO RUN AWSTATS FREQUENTLY</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> AWStats must be ran frequently to update statistics.\r
+How can I do this ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font><br>\r
+<u>With Windows</u>, you can use the internal task scheduler.\r
+The use of this tool is not an AWStats related problem, so please take a look at your Windows manual.\r
+Warning, if you use <i>"awstats.pl -config=mysite -update"</i> in your scheduled task, you might\r
+experience problem of failing task. Try this instead<br>\r
+<i>"C:\WINNT\system32\CMD.EXE /C C:\[awstats_path]\awstats.pl -config=mysite -update"</i><br>\r
+or<br>\r
+<i>"C:\[perl_path]\perl.exe C:\[awstats_path]\awstats.pl -config=mysite -update"</i><br>\r
+A lot of other scheduler (sharewares/freewares) are very good.<br>\r
+<u>With unix-like operating systems</u>, you can use the "crontab".<br>\r
+This is examples of lines you can add in the cron file (see your unix reference manual for cron) :<br>\r
+To run update every day at 04:00, use :<br>\r
+<i>0 4 * * * /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=mysite -update</i><br>\r
+To run update every hour, use :<br>\r
+<i>0 * * * * /opt/awstats/wwwroot/cgi-bin/awstats.pl -config=mysite -update</i><br>\r
+<br>\r
+\r
+<a name="EXCLUDEHOSTS"></a><br>\r
+<b><u>FAQ-SET600 : HOW CAN I EXCLUDE MY IP ADDRESS (OR WHOLE SUBNET MASK) FROM STATS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I don't want to see my own IP address in the stats or I want to exclude counting\r
+visits from a whole subnet.<br>\r
+<font style="color: #4444cc">SOLUTION:</font><br>\r
+You must edit the config file to change the SkipHosts parameter.<br>\r
+For example, to exclude:<br>\r
+- your own IP address 123.123.123.123, use SkipHosts="123.123.123.123"<br>\r
+- the whole subnet 123.123.123.xxx, use SkipHosts="123.123.123"<br>\r
+- all sub hosts xxx.myintranet.com, use SkipHosts=".myintranet.com" (This one works only if DNS lookup is already done in your\r
+log file).<br>\r
+<br> \r
+\r
+\r
+<hr><br>\r
+\r
+\r
+<a name="SPEED"></a><br>\r
+<b><u>FAQ-COM100 : AWSTATS SPEED/TIMEOUT PROBLEMS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> When I analyze large log files,\r
+processing times are very important (Update process from a browser\r
+returns a timeout/internal error after a long wait).\r
+Is there a setup or things to do to avoid this and increase speed ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font> Yes. You really need to understand \r
+how a log analyzer works to have good speed. There is also major setup changes \r
+you can do to decrease your processing time.<br>\r
+- Launch AWStats more often (from crontab or a scheduler). More often you launch \r
+AWStats, more faster is AWStats (because the less is the number of NEW lines in \r
+log, since last run, to process). See the <a href="awstats_benchmark.html">Benchmark page</a> to\r
+get examples of launching frequency according to your web traffic<br>\r
+- You can disable <i>DNSLookup</i> in configure file (set <i>DNSLookup=0</i>) \r
+<u>but this requires absolutely that hosts addresses in your log file are already \r
+resolved</u> (need to setup your web server to do so). Speed can be increased \r
+up by <b>2 to 50</b> times !<br>\r
+If you don't understand what is an "already resolved reverse DNS lookup", keep \r
+this parameter to 1.<br>\r
+- If you use Apache, set <i>PurgeLogFile</i> to 1 (By default, to avoid bad surprise, \r
+<i>PurgeLogFile</i> is 0 in configure file, but you can set it to 1 to ask AWStats \r
+to purge the log file after processing it. This increase speed for next run).<br>\r
+- Use last AWStats version.<br>\r
+<br>\r
+\r
+<a name="BENCHMARK"></a><br>\r
+<b><u>FAQ-COM150 : BENCHMARK / FREQUENCY TO LAUNCH AWSTATS TO UPDATE STATISTICS</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> What is AWStats speed ?<br>\r
+<font style="color: #660000">PROBLEM:</font> What is the frequency to launch AWStats process to update my statistics ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+All benchmarks information and advice on frequency for update process are related into the <a href="awstats_benchmark.html">Benchmark page</a>.\r
+<br>\r
+\r
+\r
+<a name="DNS"></a><br>\r
+<b><u>FAQ-COM200 : HOW REVERSE DNS LOOKUP WORKS, UNRESOLVED IP ADDRESSES</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> The reported page AWStats shows me \r
+has no hostnames, only IP addresses, countries reported are all "unknown".<br>\r
+<font style="color: #4444cc">SOLUTION:</font> When AWStats find an IP address \r
+in your log file, it tries a reverse DNS lookup to find the hostname and domain \r
+if the <i>DNSLookup</i> parameter, in your AWStats config file, is <i>DNSLookup=1</i> \r
+(Default value). So, first, check if you have the good value. The <i>DNSLookup=0</i> \r
+must be used only if your log file contains already resolved IP address. For example, \r
+when you set up Apache with the <i>HostNameLookups=on</i> directive. When you \r
+ask your web server to make itself the reverse DNS lookup to log hostname instead \r
+of IP address, you will still find some IP addresses in your log file because \r
+the reverse DNS lookup is not always possible. But if your web server fails in \r
+it, AWStats will also fails (All reverse DNS lookups use the same system API). \r
+So to avoid AWStats to make an already done lookup (with success or not), you \r
+can set <i>DNSLookup=0</i> in AWStats config file. Since 2.23, because a lot of users\r
+don't know this option, when AWStats find an already resolved IP Address in your log \r
+file, it disables itself the reverse DNS lookup because it means that reverse lookup \r
+is already done in log file. If IIS or Apache has made one DNS lookup resolution \r
+for one record in your log file, they must have done it for all the file. If \r
+you find only few lines with hostnames and others with IP Address, it means your \r
+web server failed in resolving them. Check your DNS reverse system with the <i>nslookup</i> \r
+command (available on NT/2000 and Unix).<br>\r
+Apache users might be interesting in knowing there is a tool called <i>logresolve</i> with\r
+Apache distribution, that can convert a logfile with IP Addresses into a logfile with resolved hostnames.<br>\r
+<br>\r
+\r
+<a name="DIFFERENT_RESULTS"></a><br>\r
+<b><u>FAQ-COM250 : DIFFERENT RESULTS THAN OTHER ANALYZER</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I also use webalizer (or another \r
+log analyzer) and it doesn't report the same results than AWStats. Why ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font>\r
+If you compare AWStats results with an other log file analyzer, you will found some differences,\r
+sometimes very important. In fact, all analyzer (even AWStats) make "over reporting" because of the\r
+problem of proxy-servers and robots. However AWStats is one the most accurate and its "over reporting"\r
+is very low where all other analyzers, even the most famous, have a very high error rate (10% to 2x more than reality).<br>\r
+This is the most important reasons why you will find differences:<br>\r
+- Some dynamic pages generated by CGI programs are not counted by some analyzer (ie Webalizer) like\r
+a "Page" (but only like a "Hit") if CGI prog has not a .cgi extension, so they are not included\r
+correctly in their statistics. AWStats does not make this error and all CGI pages are pages.<br>\r
+- AWStats is the alone analyzer (that i know for the moment) able to detect robots visits.\r
+All other analyzers think it's a human visitor. This error make them to report more visits and visitors\r
+than reality. This does not happen with AWStats. When it tells "1 visitor", it means "1 human visitor".\r
+All robots hits are reported in the "Robots/Spiders visitors" chart.<br>\r
+- A lot of analyzer (ie webalizer) use the "Hits" to count visitors. This is not a good way of working :\r
+Some visitors use a lot of proxy servers to surf (ie: AOL users), this means it's possible that several\r
+hosts (with several IP addresses) are used to reach your site for only one visitor (ie: one proxy server download\r
+the page and 2 other servers download all images). Because of this, if stats of unique visitors are made on "hits",\r
+3 users are reported but it's wrong. So AWStats, like HitBox, considers only HTML "Pages" to count unique visitors.\r
+This decrease the error, not completely, because it's always possible that a proxy server download one HTML frame and\r
+another one download another frame, but this make the over-reporting of unique visitors less important.<br>\r
+There is also differences in log analyzers databases and algorithms that make details of results less or more accurate:<br>\r
+- AWStats has a larger browser, os and search engine database, so reports concerning this are more accurate.<br>\r
+- AWStats has url syntax rules to find keywords or keyphrases used to find your site, but AWStats has also\r
+an algorithm to detect keywords of unknown search engines with unknown url syntax rule.<br>\r
+<br>\r
+\r
+<a name="DIFFERENCE_HOURS"></a><br>\r
+<b><u>FAQ-COM300 : DIFFERENCE BETWEEN LOCAL HOURS AND AWSTATS REPORTED HOURS</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I use IIS and there's a difference \r
+between local hour and AWStats reported hour. For example I made a hit on a page \r
+at 4:00 and AWStats report I hit it at 2:00.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> This is not a problem of time \r
+in your local client host. AWStats use only time reported in logs by your server \r
+and all time are related to server hour. The problem is that IIS in some foreign \r
+versions puts GMT time in its log file (and not local time). So, you have also \r
+GMT time in your statistics.<br>\r
+You can do nothing, for the moment, but waiting that Microsoft change this in next\r
+IIS versions. However, Microsoft sheet Q271196 "IIS Log File Entries \r
+Have the Incorrect Date and Time Stamp" says: <br>\r
+<i>The selected log file format is the W3C Extended Log File \r
+Format. The extended log file format is defined in the W3C \r
+Working Draft WD-logfile-960323 specification by Phillip \r
+M. Hallam-Baker and Brian Behlendorf. This document defines \r
+the Date and Time files to always be in GMT. This behavior \r
+is by design.</i><br>\r
+So this means this way of working might never be changed.<br>\r
+<br>\r
+\r
+<a name="OLDLOG"></a><br>\r
+<b><u>FAQ-COM350 : HOW CAN I PROCESS OLD LOG FILE ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I want to process an old log file to include its data in my AWStats reports.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+You must change your LogFile parameter to point to the old log file and run the update. However the update process can only accept\r
+files in chronological order, so if you have already processed a recent file, you must before\r
+reset all your statistics (see next FAQ) and restart all the update process for all past log files and in chronological order.<br>\r
+<br>\r
+\r
+<a name="MULTILOG"></a><br>\r
+<b><u>FAQ-COM400 : HOW CAN I UPDATE MY STATISTICS WHEN I USE A LOAD BALANCING SYSTEM THAT SPLITS MY LOGS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> How can I update my statistics when i use a load balancing system that split my logs ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+The best solution is to merge all split log files resulted from all your load balanced servers into one. For this, you can use\r
+the <b>logresolvemerge</b> tool provided with AWStats since version 3.2 :<br>\r
+<i>logresolvemerge.pl file1.log file2.log ... filen.log > newfiletoprocess.log</i><br>\r
+And setup the <i>LogFile</i> parameter in your config file to process the <i>newfiletoprocess.log</i> file.<br>\r
+<br>\r
+\r
+<a name="RESET"></a><br>\r
+<b><u>FAQ-COM500 : HOW CAN I RESET ALL MY STATISTICS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I want to reset all my statistics and restart my stats from now.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+All analyzed data are stored by AWStats in files called awstatsMMYYYY.[site.]txt (one file each month).\r
+You will find those files in directory defined by "DirData" parameter (same directory than awstats.pl by default).<br>\r
+To reset your stats for a month, you just have to delete the file for the required month/year.<br>\r
+To reset all your stats, delete all files awstats*.txt<br>\r
+Warning, if you delete those data files, you won't be able to recover your stats back, unless you kept old log files somewhere.\r
+You will have to process all past log files (in chronological order) to get old statistics back.<br>\r
+<br>\r
+\r
+<a name="EDITHISTORY"></a><br>\r
+<b><u>FAQ-COM550 : CAN I SAFELY REMOVE A LINE IN HISTORY FILES (awstatsMMYYYY*.txt) ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> After processing a log file I want to change my statistics\r
+without running AWStats update process but changing directly data in AWStats historical database files.<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+If you remove a lines starting with "BEGIN_" or "END_", AWStats will find your file "corrupted" so you must not change those\r
+kind of lines. All lines that are not in any "section" (between a BEGIN_xxx and END_xxx line) should also not be removed.\r
+However you can change any line that is a "section record", but you do this at your own risk. Your reported stats\r
+might have wrong values after that.<br>\r
+<br>\r
+\r
+<hr><br>\r
+\r
+<a name="CSSATTACK"></a><br>\r
+<b><u>FAQ-SEC00 : CAN AWSTATS BE USED TO MAKE CROSS SITE SCRIPTING ATTACKS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> If a bad user use a browser to make a hit on an URL that include a < SCRIPT > ... < /SCRIPT >\r
+section in its parameter, when AWStats will show the links on the report page, does the script will be executed ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+No. AWStats use a filter to remove all scripts codes that was included in an URL to make a Cross Site Scripting Attack using a\r
+log analyzer report page.<br>\r
+<br>\r
+\r
+<a name="SECUSER"></a><br>\r
+<b><u>FAQ-SEC150 : HOW CAN I PREVENT SOME USERS TO SEE STATISTICS OF OTHER USERS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> I don't want a user xxx (having a site www.xxx.com) to see statistics of user yyy (having\r
+a site www.yyy.com). How can i setup AWStats for this ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+Take a look at the <a href="awstats_security.html">security page</a>.<br>\r
+<br>\r
+\r
+<a name="WORMS"></a><br>\r
+<b><u>FAQ-SEC200 : HOW TO MANAGE LOG FILES (AND STATISTICS) CORRUPTED BY 'CODE RED VIRUS LIKE' ATTACKS ?</u></b><br>\r
+<font style="color: #660000">PROBLEM:</font> My site is attacked by some Code Red Viruses. This make my log file corrupted\r
+and full of 404 errors. So my statistics are also full of 404 errors. This make AWStats slower and my history files very large.\r
+Can I do something to avoid this ?<br>\r
+<font style="color: #4444cc">SOLUTION:</font> \r
+Yes.<br>\r
+'Code Red virus like' attacks are infected browsers or robots that make hits on your site using a very long unknown URL\r
+like this one (hoping your server is IIS):<br>\r
+<i>/default.ida?XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%40%50...%40%50</i><br>\r
+URL is generated by the infected robot and the purpose is to exploit a vulnerability of the web server (only IIS is concerned by Code Red worm).\r
+So you will often find a 'common string' in those URLs. For example, with Code Red worm, there is always default.ida in the URL string.\r
+So, you should edit your config file to add in the SkipFiles parameter the following value:<br>\r
+<i>SkipFiles="default.ida"</i><br>\r
+<br>\r
+\r
+\r
+<hr>\r
+<script language=javascript>\r
+       var lastmod = new Date(document.lastModified);\r
+       if (lastmod.getDate() > 0) {\r
+               if (lastmod.getDate()<10) zerod="0"\r
+               else zerod="";\r
+               if (lastmod.getMonth()<9) zerom="0"\r
+               else zerom=""\r
+               year2kok=lastmod.getYear();\r
+               if (year2kok<100) year2kok+=2000;\r
+               if ((year2kok>=100) && (year2kok < 1970)) year2kok+=1900;\r
+               document.writeln("Last revision: "+year2kok+"-"+zerom+(lastmod.getMonth()+1)+"-"+zerod+lastmod.getDate());\r
+       }\r
+</script>\r
+\r
+</body>\r
+</html>\r
index a6e3039464022e6f4a00a24a9430ad30937a3e80..2806bb0b2321a18a8431094551e2f2f97fe56057 100644 (file)
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<html>
-<head>
-<meta name="description" content="AWStats Documentation - Setup page">
-<meta name="keywords" content="awstats, awstat, setup, config, install">
-<meta name="robots" content="index,follow">
-<meta name="title" content="AWStats Documentation - Setup page">
-<title>AWStats Documentation - Setup page</title>
-<link rel="stylesheet" href="styles.css" type="text/css">
-</head>
-
-<body topmargin=10 leftmargin=5>
-<!-- $Revision$ - $Author$ - $Date$ -->
-
-
-<table style="font: 10pt arial,helvetica,verdana" cellpadding=0 cellspacing=0 border=0 bgcolor=#FFFFFF width=100%>
-
-<!-- Large -->
-<tr style="font: 10pt arial,helvetica,verdana">
-<td bgcolor=#9999cc align=center><a href="/"><img src="images/awstats_logo4.png" border=0></a></td>
-<td bgcolor=#9999cc align=center>
-<br>
-<font style="font: 16pt Times;" color=#EEEEFF><b>AWStats logfile analyzer 4.0 Documentation</b></font><br>
-<br>
-</td>
-<td bgcolor=#9999cc align=center>
-&nbsp;
-</td>
-</tr>
-
-</table>
-
-
-<br><br><H1 style="font: 26px Times;">Install, Setup and Use AWStats</H1>
-
-AWStats common use is made in 3 steps:<br>
-<ul>
-<li>The install and setup<br>
-<li>The build/update of statistics<br>
-<li>The reading of results<br>
-</ul>
-<br>
-
-<br><a name="INSTALL"><H2 style="font: 22px Times; color: #606060"><u>Install and Setup</u></H2></a>
-
-<br>
-<b>1) With Apache Server (on Unix/Linux, Windows, MacOS...)</b><br>
-<br>
-* Configure your apache web server to have <b>NCSA combined/XLF/ELF</b> log format (you can use your own log format but
-this predefined logformat is often the best choice and made setup easier). You can do this by changing, in <b>httpd.conf</b>,
-following directives (See your apache manual for more information):<br>
-<i>CustomLog /yourlogpath/yourlogfile common</i><br>
-into<br>
-<i>CustomLog /yourlogpath/yourlogfile combined</i><br>
-<br>
-To be sure the log format change is effective, you can stop Apache, remove all old log files, restart Apache and go to
-your homepage. This is an example of records you should get then in the new log file:<br>
-<i>62.161.78.75 - - [dd/mmm/yyyy:hh:mm:ss +0000] "GET / HTTP/1.1" 200 1234 "http://www.from.com/from.html" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"</i><br>
-<br>
-* Copy all the content of provided AWStats cgi-bin directory into your web 
-server cgi-bin directory (this includes <b>awstats.pl</b>, <b>awstats.model.conf</b>, and the <b>lang</b> and <b>db</b> sub-directories).<br>
-<br>
-* If necessary (should not with most perl interpreter), in awstats.pl file, edit the first line<br>
-<i>#!/usr/bin/perl</i><br>
-to reflect the path were your perl interpreter is installed.<br>
-Default value works for most of Unix OS, but it also might be<br>
-<i>#!/usr/local/bin/perl</i><br>
-With Apache for Windows and ActivePerl interpreter, it might be<br>
-<i>#!c:/program files/activeperl/bin/perl</i><br>
-<br>
-* Move all AWStats <b>icon sub-directories</b> into a directory readable by your
-web server, for example /yourwwwroot/icon or /yourwwwroot/icons.<br>
-<br>
-* Copy awstats.model.conf into <b>awstats.virtualhostname.conf</b> (or awstats.conf).
-Note: When you will run AWStats, it will first look for a config file named
-awstats.virtualhostname.conf, and, if not found, will look for awstats.conf.<br>
-Whatever the name you choose, this new file must be stored in<br>
-- /etc/opt/awstats or /etc/awstats or /etc or same directory than awstats.pl (so cgi-bin) for Unix/Linux users.<br>
-- same directory than awstats.pl (so cgi-bin) for Windows and other OS.<br>
-Edit this new config file with your own setup :<br>
-- Change <b>"LogFile"</b> value with full path of your web server log file (You
-can also use a relative path from your awstats.pl directory).<br>
-- Check if <b>"LogFormat"</b> has the value "1" (it means "NCSA apache combined/ELF/XLF log format").<br>
-- Change <b>"DirIcons"</b> parameter to reflect relative URL of icon directory.<br>
-- Edit <b>"SiteDomain"</b> parameter with the main domain name or the intranet 
-web server name used to reach the web site to analyze.<br>
-- You can change other parameters if you want.<br>
-<br>
-Install and Setup is finished. You can jump to the <a href="#BUILD_UPDATE">Build/Update Statistics</a> section.<br>
-
-<br>
-<br>
-<br>
-<b>2) With IIS Server</b><br>
-<br>
-* Configure IIS to log in <b>"Extended W3C log format"</b> (You can still use
-your own log format but setup is easier if made like suggested). So, for
-this, start the IIS Snap-in, select the web site and look at its
-Properties. Choose W3C Extended Log Format, then Properties, then the
-Tab Extended Properties and uncheck everything under Extended Properties.<br>
-Once they are all unchecked, check all following fields:<br>
-<i>
-date<br>
-time<br>
-c-ip<br>
-cs-username<br>
-cs-method<br>
-cs-uri-stem<br>
-sc-status<br>
-sc-bytes<br>
-cs-version<br>
-cs(User-Agent)<br>
-cs(Referer)<br>
-</i>
-To be sure the log format change is effective, you must stop IIS, remove all old log files, restart IIS and go to
-your homepage. This is an example of records you should get then in the new log file:<br>
-<i>2000-07-19 14:14:14 62.161.78.73 - GET / 200 1234 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) http://www.from.com/from.htm</i>
-<br>
-* Copy all the content of provided AWStats cgi-bin directory into your web 
-server cgi-bin directory (this includes <b>awstats.pl</b>, <b>awstats.model.conf</b>, and the <b>lang</b> and <b>db</b> sub-directories).<br>
-<br>   
-* Move all AWStats <b>icon sub-directories</b> into a directory readable by your
-web server, for example C:\yourwwwroot\icon.<br>
-<br>
-* Copy awstats.model.conf into <b>awstats.virtualhostname.conf</b> (or awstats.conf).
-Note: When you will run AWStats, it will first look for a config file named
-awstats.virtualhostname.conf, and, if not found, will look for awstats.conf.<br>
-Whatever the name you choose, this new file must be stored in<br>
-- same directory than awstats.pl (so cgi-bin)<br>
-Edit this new config file with your own setup :<br>
-- Change <b>"LogFile"</b> value with full path of your web server log file (You
-can also use a relative path from your awstats.pl directory).<br>
-- Change <b>"LogFormat"</b> to value "2" (it means "IIS Extended W3C log format").<br>
-- Change <b>"DirIcons"</b> parameter to reflect relative URL of icon directory.<br>
-- Edit <b>"SiteDomain"</b> parameter with the main domain name or the intranet
-web server name used to reach the web site to analyze.<br>
-- You can change other parameters if you want.<br>
-<br>
-Install and Setup is finished. You can jump to the <a href="#BUILD_UPDATE">Build/Update Statistics</a> section.<br>
-<br>
-
-<br>
-<b>3) With other web servers</b><br>
-<br>
-Setup process is similar to setup for Apache or IIS.<br>
-Use <b>"LogFormat"</b> to value "3" if you have WebStar native log format.<br>
-<br>
-
-
-<br><a name="BUILD_UPDATE"><H2 style="font: 22px Times; color: #606060"><u>Build/Update Statistics</u></H2></a>
-
-<br>
-Even if AWStats allows "real-time" statistics with its "update feature" from your web browser (See next
-section <a href="#READ">Read Statistics</a>), you must run the update process from a scheduler frequently.<br>
-The first update of statistics can be made the first time manually from the command line (the first time,
-process may be long :<br>
-<b><i>awstats.pl -config=virtualhostname -update</i></b><br>
-<br>
-AWStats will read the config file (awstats.virtualhostname.conf, or, if
-not found, awstats.conf) and create/update its database with all summary information issued from analyzed log file.<br>
-AWStats database files are saved in directory defined by <i>DirData</i> parameter in config file.<br>
-When update is finished, you should get a result like this:<br>
-<i>Lines in file: 225730<br>
-Found 5 dropped records,<br>
-Found 124 corrupted records,<br>
-Found 0 old records,<br>
-Found 225601 new records.<br>
-</i><br>
-<b>Dropped records</b> are records discarded because they were not user HTTP request or requests were not qualified
-by AWStats filters (See <a href="awstats_config.html#SkipHosts">SkipHosts</a>, <a href="awstats_config.html#SkipFiles">SkipFiles</a>,
-and <a href="awstats_config.html#OnlyFiles">OnlyFiles</a> parameters).
-If you want to see which lines were dropped, you can add the <b>-showdropped</b> option on command line.<br>
-<b>Corrupted records</b> are records that does not match log format defined by "LogFormat" parameter in AWStats config/domain file.
-With all webservers you can experience a little bit corrupted records (<5%) even when everythings work correctly.
-This can be the result of several reasons: Web server internal bugs, bad requests made by buggy browsers, web server brutal stop...<br>
-If all your lines are corrupted and "LogFormat" parameter in AWStats config/domain file is correct, may be it's the log
-format setup in your web server that is wrong. Don't forget that you "LogFormat" parameter in AWStats config/domain
-file MUST match the log file format you analyze.<br>
-If you want to see which lines are corrupted, you can add the <b>-showcorrupted</b> option on command line.<br>
-<b>Old records</b> are simply records that were already processed by a previous update process. So it's not necessary to
-purge your log file after each update process even if it's HIGHLY recommended to do it as soon as possible.<br>
-<b>New records</b> are records in your log file that were successfully used to build/update statistics.<br>
-<br>
-Note : A log analysis process is slow (one second for each 4100 lines of your
-logfile with Athlon 1Ghz, plus DNS resolution time for each different IP
-address in your logfile if <b>"DNSLookup"</b> is set to 1 and not already done in your log file).<br>
-See <a href="awstats_benchmark.html">Benchmark page</a> for more accurate information.<br>
-<br>
-
-<br>
-New updates should be made from an automatic process.<br>
-You can add instructions in your <b>crontab</b> (Unix/Linux) or your <b>task scheduler</b> (for
-Windows), to launch frequently this Awstats update process.<br>
-For sites with:<br>
-- 10,000 visitors a month     Launch AWStats once a day<br>
-- 50,000 visitors a month     Launch AWStats once every 4 hours<br>
-- 250,000 visitors a month    Launch AWStats once an hour<br>
-- 1,000,000 visitors a month  Launch AWStats once an hour<br>
-This is ABSOLUTELY necessary to keep good performances.<br>
-See AWStats <a href="awstats_benchmark.html">Benchmark page</a> for more accurate information.<br>
-<br>
-!!! Warning, if you don't use (or can't use with IIS) the <b>"PurgeLogFile"</b> parameter,
-it's very important that you don't forget to purge/rotate your log file yourself (or setup your web server to do it)
-frequently. Even if AWStats never analyzes twice the same log record, the more often you clean your log file, the
-faster AWStats will be.<br>
-<br>
-
-<br><a name="READ"><H2 style="font: 22px Times; color: #606060"><u>Read Statistics</u></H2></a>
-
-<br>
-To see results of analyze, you have several solutions depending on your <a href="awstats_security.html">security policy</a>.<br>
-<br>
-
-* You can build the main report, in a static HTML page, from the command line, like this :<br>
-<b><i>awstats.pl -config=virtualhostname -output -staticlinks > awstats.mainresults.html</i></b><br>
-<br>
-You can also use all other output options (each of them give you another report).
-This is how to use all other possible output options:<br>
-<b><i>awstats.pl -config=virtualhostname -output=allhosts -staticlinks > awstats.allhosts.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=lasthosts -staticlinks > awstats.lasthosts.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=unknownip -staticlinks > awstats.unknownip.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=urldetail -staticlinks > awstats.urldetail.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=urldetail:</b>filter<b> -staticlinks > awstats.urldetailfiltered.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=unknownos -staticlinks > awstats.unknownos.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=unknownbrowsers -staticlinks > awstats.unknownbrowsers.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=browserdetail -staticlinks > awstats.browserdetail.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=allkeyphrases -staticlinks > awstats.allkeyphrases.html</i></b><br>
-<b><i>awstats.pl -config=virtualhostname -output=errors404 -staticlinks > awstats.errors404.html</i></b><br>
-<br>
-* You can also view dynamically your statistics from a browser.<br>
-If you named your config file awstats.virtualhostname.conf, use URL:<br>
-<b><i>http://www.myserver.mydomain/cgi-bin/awstats.pl?config=virtualhostname</i></b><br>
-where virtualhostname is used to know which config file to use (AWStats
-will use awstats.virtualhostname.conf file).<br>
-If you named your config file awstats.conf, just use URL:<br>
-<b><i>http://www.myserver.mydomain/cgi-bin/awstats.pl</i></b><br>
-<br>
-Note: If <b>"AllowToUpdateStatsFromBrowser"</b> parameter is set to 1 in AWStats config/domain file,
-you will also be able to run the update process from your browser. Just click on link "Update now".<br>
-<br><br>
-
-<hr>
-
-<script language=javascript>
-       var lastmod = new Date(document.lastModified);
-       if (lastmod.getDate() > 0) {
-               if (lastmod.getDate()<10) zerod="0"
-               else zerod="";
-               if (lastmod.getMonth()<9) zerom="0"
-               else zerom=""
-               year2kok=lastmod.getYear();
-               if (year2kok<100) year2kok+=2000;
-               if ((year2kok>=100) && (year2kok < 1970)) year2kok+=1900;
-               document.writeln("Last revision: "+year2kok+"-"+zerom+(lastmod.getMonth()+1)+"-"+zerod+lastmod.getDate());
-       }
-</script>
-
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\r
+<html>\r
+<head>\r
+<meta name="description" content="AWStats Documentation - Setup page">\r
+<meta name="keywords" content="awstats, awstat, setup, config, install">\r
+<meta name="robots" content="index,follow">\r
+<meta name="title" content="AWStats Documentation - Setup page">\r
+<title>AWStats Documentation - Setup page</title>\r
+<link rel="stylesheet" href="styles.css" type="text/css">\r
+</head>\r
+\r
+<body topmargin=10 leftmargin=5>\r
+<!-- $Revision$ - $Author$ - $Date$ -->\r
+\r
+\r
+<table style="font: 10pt arial,helvetica,verdana" cellpadding=0 cellspacing=0 border=0 bgcolor=#FFFFFF width=100%>\r
+\r
+<!-- Large -->\r
+<tr style="font: 10pt arial,helvetica,verdana">\r
+<td bgcolor=#9999cc align=center><a href="/"><img src="images/awstats_logo4.png" border=0></a></td>\r
+<td bgcolor=#9999cc align=center>\r
+<br>\r
+<font style="font: 16pt Times;" color=#EEEEFF><b>AWStats logfile analyzer 4.0 Documentation</b></font><br>\r
+<br>\r
+</td>\r
+<td bgcolor=#9999cc align=center>\r
+&nbsp;\r
+</td>\r
+</tr>\r
+\r
+</table>\r
+\r
+\r
+<br><br><H1 style="font: 26px Times;">Install, Setup and Use AWStats</H1>\r
+\r
+AWStats common use is made in 3 steps:<br>\r
+<ul>\r
+<li>The install and setup<br>\r
+<li>The build/update of statistics<br>\r
+<li>The reading of results<br>\r
+</ul>\r
+<br>\r
+\r
+<br><a name="INSTALL"><H2 style="font: 22px Times; color: #606060"><u>Install and Setup</u></H2></a>\r
+\r
+<br>\r
+<b>1) With Apache Server (on Unix/Linux, Windows, MacOS...)</b><br>\r
+<br>\r
+* Configure your apache web server to have <b>NCSA combined/XLF/ELF</b> log format (you can use your own log format but\r
+this predefined logformat is often the best choice and made setup easier). You can do this by changing, in <b>httpd.conf</b>,\r
+following directives (See your apache manual for more information):<br>\r
+<i>CustomLog /yourlogpath/yourlogfile common</i><br>\r
+into<br>\r
+<i>CustomLog /yourlogpath/yourlogfile combined</i><br>\r
+<br>\r
+To be sure the log format change is effective, you can stop Apache, remove all old log files, restart Apache and go to\r
+your homepage. This is an example of records you should get then in the new log file:<br>\r
+<i>62.161.78.75 - - [dd/mmm/yyyy:hh:mm:ss +0000] "GET / HTTP/1.1" 200 1234 "http://www.from.com/from.html" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"</i><br>\r
+<br>\r
+* Copy all the content of provided AWStats cgi-bin directory into your web \r
+server cgi-bin directory (this includes <b>awstats.pl</b>, <b>awstats.model.conf</b>, and the <b>lang</b> and <b>db</b> sub-directories).<br>\r
+<br>\r
+* If necessary (should not with most perl interpreter), in awstats.pl file, edit the first line<br>\r
+<i>#!/usr/bin/perl</i><br>\r
+to reflect the path were your perl interpreter is installed.<br>\r
+Default value works for most of Unix OS, but it also might be<br>\r
+<i>#!/usr/local/bin/perl</i><br>\r
+With Apache for Windows and ActivePerl interpreter, it might be<br>\r
+<i>#!c:/program files/activeperl/bin/perl</i><br>\r
+<br>\r
+* Move all AWStats <b>icon sub-directories</b> into a directory readable by your\r
+web server, for example /yourwwwroot/icon or /yourwwwroot/icons.<br>\r
+<br>\r
+* Copy awstats.model.conf into <b>awstats.virtualhostname.conf</b> (or awstats.conf).\r
+Note: When you will run AWStats, it will first look for a config file named\r
+awstats.virtualhostname.conf, and, if not found, will look for awstats.conf.<br>\r
+Whatever the name you choose, this new file must be stored in<br>\r
+- /etc/opt/awstats or /etc/awstats or /etc or same directory than awstats.pl (so cgi-bin) for Unix/Linux users.<br>\r
+- same directory than awstats.pl (so cgi-bin) for Windows and other OS.<br>\r
+Edit this new config file with your own setup :<br>\r
+- Change <b>"LogFile"</b> value with full path of your web server log file (You\r
+can also use a relative path from your awstats.pl directory).<br>\r
+- Check if <b>"LogFormat"</b> has the value "1" (it means "NCSA apache combined/ELF/XLF log format").<br>\r
+- Change <b>"DirIcons"</b> parameter to reflect relative URL of icon directory.<br>\r
+- Edit <b>"SiteDomain"</b> parameter with the main domain name or the intranet \r
+web server name used to reach the web site to analyze.<br>\r
+- You can change other parameters if you want.<br>\r
+<br>\r
+Install and Setup is finished. You can jump to the <a href="#BUILD_UPDATE">Build/Update Statistics</a> section.<br>\r
+\r
+<br>\r
+<br>\r
+<br>\r
+<b>2) With IIS Server</b><br>\r
+<br>\r
+* Configure IIS to log in <b>"Extended W3C log format"</b> (You can still use\r
+your own log format but setup is easier if made like suggested). So, for\r
+this, start the IIS Snap-in, select the web site and look at its\r
+Properties. Choose W3C Extended Log Format, then Properties, then the\r
+Tab Extended Properties and uncheck everything under Extended Properties.<br>\r
+Once they are all unchecked, check all following fields:<br>\r
+<i>\r
+date<br>\r
+time<br>\r
+c-ip<br>\r
+cs-username<br>\r
+cs-method<br>\r
+cs-uri-stem<br>\r
+sc-status<br>\r
+sc-bytes<br>\r
+cs-version<br>\r
+cs(User-Agent)<br>\r
+cs(Referer)<br>\r
+</i>\r
+To be sure the log format change is effective, you must stop IIS, remove all old log files, restart IIS and go to\r
+your homepage. This is an example of records you should get then in the new log file:<br>\r
+<i>2000-07-19 14:14:14 62.161.78.73 - GET / 200 1234 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0) http://www.from.com/from.htm</i>\r
+<br>\r
+* Copy all the content of provided AWStats cgi-bin directory into your web \r
+server cgi-bin directory (this includes <b>awstats.pl</b>, <b>awstats.model.conf</b>, and the <b>lang</b> and <b>db</b> sub-directories).<br>\r
+<br>   \r
+* Move all AWStats <b>icon sub-directories</b> into a directory readable by your\r
+web server, for example C:\yourwwwroot\icon.<br>\r
+<br>\r
+* Copy awstats.model.conf into <b>awstats.virtualhostname.conf</b> (or awstats.conf).\r
+Note: When you will run AWStats, it will first look for a config file named\r
+awstats.virtualhostname.conf, and, if not found, will look for awstats.conf.<br>\r
+Whatever the name you choose, this new file must be stored in<br>\r
+- same directory than awstats.pl (so cgi-bin)<br>\r
+Edit this new config file with your own setup :<br>\r
+- Change <b>"LogFile"</b> value with full path of your web server log file (You\r
+can also use a relative path from your awstats.pl directory).<br>\r
+- Change <b>"LogFormat"</b> to value "2" (it means "IIS Extended W3C log format").<br>\r
+- Change <b>"DirIcons"</b> parameter to reflect relative URL of icon directory.<br>\r
+- Edit <b>"SiteDomain"</b> parameter with the main domain name or the intranet\r
+web server name used to reach the web site to analyze.<br>\r
+- You can change other parameters if you want.<br>\r
+<br>\r
+Install and Setup is finished. You can jump to the <a href="#BUILD_UPDATE">Build/Update Statistics</a> section.<br>\r
+<br>\r
+\r
+<br>\r
+<b>3) With other web servers</b><br>\r
+<br>\r
+Setup process is similar to setup for Apache or IIS.<br>\r
+Use <b>"LogFormat"</b> to value "3" if you have WebStar native log format.<br>\r
+<br>\r
+\r
+\r
+<br><a name="BUILD_UPDATE"><H2 style="font: 22px Times; color: #606060"><u>Build/Update Statistics</u></H2></a>\r
+\r
+<br>\r
+Even if AWStats allows "real-time" statistics with its "update from browser feature" (See next\r
+section <a href="#READ">Read Statistics</a>), you must run the update process from a scheduler frequently.<br>\r
+The first update of statistics can be made the first time manually from the command line (the first time,\r
+process may be long :<br>\r
+<b><i>awstats.pl -config=virtualhostname -update</i></b><br>\r
+<br>\r
+AWStats will read the config file (awstats.virtualhostname.conf, or, if not found, awstats.conf)\r
+and create/update its database with all summary information issued from analyzed log file.<br>\r
+AWStats database files are saved in directory defined by <i>DirData</i> parameter in config file.<br>\r
+When update is finished, you should get a result like this:<br>\r
+<i>Lines in file: 225730<br>\r
+Found 5 dropped records,<br>\r
+Found 124 corrupted records,<br>\r
+Found 0 old records,<br>\r
+Found 225601 new records.<br>\r
+</i><br>\r
+<b>Dropped records</b> are records discarded because they were not user HTTP request or requests were not qualified\r
+by AWStats filters (See <a href="awstats_config.html#SkipHosts">SkipHosts</a>, <a href="awstats_config.html#SkipFiles">SkipFiles</a>,\r
+and <a href="awstats_config.html#OnlyFiles">OnlyFiles</a> parameters).\r
+If you want to see which lines were dropped, you can add the <b>-showdropped</b> option on command line.<br>\r
+<b>Corrupted records</b> are records that does not match log format defined by "LogFormat" parameter in AWStats config/domain file.\r
+With all webservers you can experience a little bit corrupted records (<5%) even when everythings work correctly.\r
+This can be the result of several reasons: Web server internal bugs, bad requests made by buggy browsers, web server brutal stop...<br>\r
+If all your lines are corrupted and "LogFormat" parameter in AWStats config/domain file is correct, may be it's the log\r
+format setup in your web server that is wrong. Don't forget that you "LogFormat" parameter in AWStats config/domain\r
+file MUST match the log file format you analyze.<br>\r
+If you want to see which lines are corrupted, you can add the <b>-showcorrupted</b> option on command line.<br>\r
+<b>Old records</b> are simply records that were already processed by a previous update process. So it's not necessary to\r
+purge your log file after each update process even if it's HIGHLY recommended to do it as soon as possible.<br>\r
+<b>New records</b> are records in your log file that were successfully used to build/update statistics.<br>\r
+<br>\r
+Note : A log analysis process is slow (one second for each 4100 lines of your\r
+logfile with Athlon 1Ghz, plus DNS resolution time for each different IP\r
+address in your logfile if <b>"DNSLookup"</b> is set to 1 and not already done in your log file).<br>\r
+See <a href="awstats_benchmark.html">Benchmark page</a> for more accurate information.<br>\r
+<br>\r
+\r
+<br>\r
+New updates should be made from an automatic process.<br>\r
+You can add instructions in your <b>crontab</b> (Unix/Linux) or your <b>task scheduler</b> (for\r
+Windows), to launch frequently this Awstats update process.<br>\r
+For sites with:<br>\r
+- 10,000 visitors a month     Launch AWStats once a day<br>\r
+- 50,000 visitors a month     Launch AWStats once every 4 hours<br>\r
+- 250,000 visitors a month    Launch AWStats once an hour<br>\r
+- 1,000,000 visitors a month  Launch AWStats once an hour<br>\r
+This is ABSOLUTELY necessary to keep good performances.<br>\r
+See AWStats <a href="awstats_benchmark.html">Benchmark page</a> for more accurate information.<br>\r
+<br>\r
+!!! Warning, if you don't use (or can't use with IIS) the <b>"PurgeLogFile"</b> parameter,\r
+it's very important that you don't forget to purge/rotate your log file yourself (or setup your web server to do it)\r
+frequently. Even if AWStats never analyzes twice the same log record, the more often you clean your log file, the\r
+faster AWStats will be.<br>\r
+<br>\r
+\r
+<br><a name="READ"><H2 style="font: 22px Times; color: #606060"><u>Read Statistics</u></H2></a>\r
+\r
+<br>\r
+To see results of analyze, you have several solutions depending on your <a href="awstats_security.html">security policy</a>.<br>\r
+<br>\r
+\r
+* You can build the main report, in a static HTML page, from the command line, like this :<br>\r
+<b><i>awstats.pl -config=virtualhostname -output -staticlinks > awstats.mainresults.html</i></b><br>\r
+<br>\r
+You can also use all other output options (each of them give you another report).\r
+This is how to use all other possible output options:<br>\r
+<b><i>awstats.pl -config=virtualhostname -output=allhosts -staticlinks > awstats.allhosts.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=lasthosts -staticlinks > awstats.lasthosts.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=unknownip -staticlinks > awstats.unknownip.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=urldetail -staticlinks > awstats.urldetail.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=urldetail:</b>filter<b> -staticlinks > awstats.urldetailfiltered.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=unknownos -staticlinks > awstats.unknownos.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=unknownbrowsers -staticlinks > awstats.unknownbrowsers.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=browserdetail -staticlinks > awstats.browserdetail.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=allkeyphrases -staticlinks > awstats.allkeyphrases.html</i></b><br>\r
+<b><i>awstats.pl -config=virtualhostname -output=errors404 -staticlinks > awstats.errors404.html</i></b><br>\r
+<br>\r
+* You can also view dynamically your statistics from a browser.<br>\r
+If you named your config file awstats.virtualhostname.conf, use URL:<br>\r
+<b><i>http://www.myserver.mydomain/cgi-bin/awstats.pl?config=virtualhostname</i></b><br>\r
+where virtualhostname is used to know which config file to use (AWStats\r
+will use awstats.virtualhostname.conf file).<br>\r
+If you named your config file awstats.conf, just use URL:<br>\r
+<b><i>http://www.myserver.mydomain/cgi-bin/awstats.pl</i></b><br>\r
+<br>\r
+Note: If <b>"AllowToUpdateStatsFromBrowser"</b> parameter is set to 1 in AWStats config/domain file,\r
+you will also be able to run the update process from your browser. Just click on link "Update now".<br>\r
+<br><br>\r
+\r
+<hr>\r
+\r
+<script language=javascript>\r
+       var lastmod = new Date(document.lastModified);\r
+       if (lastmod.getDate() > 0) {\r
+               if (lastmod.getDate()<10) zerod="0"\r
+               else zerod="";\r
+               if (lastmod.getMonth()<9) zerom="0"\r
+               else zerom=""\r
+               year2kok=lastmod.getYear();\r
+               if (year2kok<100) year2kok+=2000;\r
+               if ((year2kok>=100) && (year2kok < 1970)) year2kok+=1900;\r
+               document.writeln("Last revision: "+year2kok+"-"+zerom+(lastmod.getMonth()+1)+"-"+zerod+lastmod.getDate());\r
+       }\r
+</script>\r
+\r
+</body>\r
+</html>\r
index 5734dd354bfc1ebcd5cb14b4706e8870390ce760..5232367242b309bbf1fcc4c12bb3d42065730d30 100644 (file)
@@ -1,14 +1,14 @@
 # AWStats configure file
 #-----------------------------------------------------------------------------
-# Copy this file into awstats.www.myserver.mydomain.conf or awstats.conf and
-# edit this new file to setup AWStats (See documentation in docs/ directory).
+# Copy this file into awstats.www.mydomain.conf or awstats.conf and edit this
+# new file to setup AWStats (See documentation in docs/ directory).
 # The config file must be in /etc/opt/awstats, /etc/awstats or /etc (for
 # Unix/Linux) or same directory than awstats.pl (Windows, Mac, Unix/Linux...)
 # To include an environment variable in any parameter (AWStats will replace
 # it with its value when reading it), follow the example:
 # Parameter="__ENVNAME__"
 #-----------------------------------------------------------------------------
-# Last change $Revision$ - $Author$ - $Date$
+# $Revision$ - $Author$ - $Date$
  
 
 
@@ -20,7 +20,6 @@
 # Possible values: A full path, or a relative path from awstats.pl directory
 # Example: "/var/log/apache/access.log"
 # Example: "../logs/mycombinedlog.log"
-#
 # You can also use tags in this filename if you need a dynamic file name
 # depending on date or time (Replacement is made by AWStats at the beginning
 # of its execution). This is available tags :
@@ -97,8 +96,8 @@ DNSLookup=0
 # defined by the "DirData" parameter. Set this value to the directory where
 # you want AWStats to save its database and working files into.
 # Warning: If you want to be able to use the "AllowToUpdateStatsFromBrowser"
-# feature (see later), you need write permissions by web server user on this
-# directory.
+# feature (see later), you need "Write" permissions by web server user on this
+# directory (and "Modify" for Windows NTFS file systems).
 # Example: "/var/cache/awstats"
 # Example: "../data"
 # Example: "C:/awstats_data_dir"
@@ -122,7 +121,7 @@ DirIcons="/icon"
 # server name used to reach the web site.
 # This parameter is only used to generate full URLs links when ShowLinksOnUrl
 # option is set to 1.
-# Example: "www.mysite.com"
+# Example: "www.mydomain.com"
 # Example: "user.mydomain.com"
 # Example: "myintranetserver"
 # Default: ""
@@ -133,7 +132,7 @@ SiteDomain=""
 # someone can use to access your site. Try to keep only the minimum number of
 # possible names/addresses to have the best performances.
 # You can repeat the "SiteDomain" value in this list.
-# Use space between each value and put a backslash before each dot.
+# Use space between each value.
 # This parameter is used to analyze referer field in log file and to help
 # AWStats to know if a referer URL is a local URL of same site or an URL of
 # another site.
@@ -143,11 +142,11 @@ HostAliases="www.myserver.com x.y.z.w localhost 127.0.0.1"
 
 # When this parameter is set to 1, AWStats add a button on report page to
 # allow to "update" statistics from a web browser. Warning, when "update" is
-# made from a browser, AWStats is ran as a CGI by the web server user
-# defined in your web server (user "nobody" by default with Apache, "IUSR_XXX"
-# with IIS), so the "DirData" directory and all already existing history files
-# (awstatsMMYYYY[.xxx].txt) must be writable by this user. Change permissions
-# if required.
+# made from a browser, AWStats is ran as a CGI by the web server user defined
+# in your web server (user "nobody" by default with Apache, "IUSR_XXX" with
+# IIS), so the "DirData" directory and all already existing history files
+# awstatsMMYYYY[.xxx].txt must be writable by this user. Change permissions if
+# necessary to "Read/Write" (and "Modify" for Windows NTFS file systems).
 # Warning: Update process can be long so you might experience "time out"
 # browser errors if you don't launch AWStats enough frequently.
 # When set to 0, update is only made when AWStats is ran from the command
@@ -195,7 +194,7 @@ CreateDirDataIfNotExists=0
 
 # In most case, AWStats is used as a cgi program. So AWStats process is ran
 # by default web server user (nobody for Unix, IUSR_xxx for IIS/Windows,...).
-# To make use easier and avoid permission problems between update process 
+# To make use easier and avoid permission's problems between update process 
 # (run by an admin user) and CGI process (ran by a low level user), AWStats
 # save its database files with read and write for everyone.
 # If you have experience on managing security policies (Web Hosting Provider),