AWStats 的配置指令和选项 主设置(必须设置)LogFile "LogFile"包含要分析的日志文件,可以使用绝对路径或者相对路径(对 awstats.pl而言)。 比如: LogFile = /var/log/apache2/access_log 如果需要设定动态的文件名(比如日志文件名中含有该日志生成的日期),可以使用标签(tags): tags 含义 %YYYY-n n小时前的年(四位,比如2006) %YY-n n小时前的年(两位,比如06) %MM-n n小时前的月(比如01) %MO-n n小时前的月(比如Jan) %DD-n n小时前的天(比如03) %HH-n n小时前的小时(比如03) %NS-n n小时前的秒(自1970年0:00以来,只精确到天,比如1136332800,是格林威治时间2006年1月4日的零点) %WM-n n小时前的周(week in month,值为01-05)(注意,文档与实际并不一致,文档中值为1-5,可能是个bug) %Wm-n n小时前的周(week in month,值为0-4) %WY-n n小时前的周(week in year,值为01-52) %Wy-n n小时前的周(week in year,值为00-51) %DW-n n小时前的天(day in week,值为1-7,1=sunday,如果需要使得1=monday,减去24小时就可以了。) %Dw-n n小时前的天(day in week,值为0-6,0=sunday,如果需要使得0=monday,减去24小时就可以了。) 比如: LogFile = /var/log/apache2/access_log.%YYYY-24-%MM-24-%DD-24.txt还可以使用管道: LogFile = gzip -d 如果有多个日志文件需要分析(比如做了负载均衡),可以这样: LogFile = "/pathtotools/logresolvemerge.pl *.log |"
LogType 日志的类型: W web日志 M mail日志 F ftp日志 比如: LogType=WLogFormat日志的格式: 1 Apache 或者 Lotus Notes/Domino 的combined日志格式 2 老的IIS的日志格式 3 Webstar的native日志格式 4 Apache 或者 Squid 的common日志格式 我们还可以自己指定日志格式,下表是日志格式的各个字段 %host 客户端的主机名或者IP地址 %lognamequot Authenticated login/user with format: "alex" %logname Authenticated login/user with format: alex %time1 日期,格式为 [dd/mon/yyyy:hh:mm:ss +0000] 或 [dd/mon/yyyy:hh:mm:ss] %time2 日期,格式为 yyyy-mm-dd hh-mm-ss %time3 日期,格式为 Mon dd hh:mm:ss 或 Mon dd hh:mm:ss yyyy %time4 日期,格式为 dddddddddd(unix的时间戳) %methodurl 方法和url,格式为:"GET /index.html HTTP/x.x" %methodurlnoprot 方法和url,格式为:"GET /index.html" %method 方法,格式为:GET %url URL,格式为:/index.html %query 查询的字符串(Query string) ( URLWithQuery 选项要用) %code 返回的状态码Return code status (with format for web log: 999) %bytesd 文档的大小(字节) %refererquot Referer page,格式为:"http://from.com/from.htm" %referer Referer page,格式为:http://from.com/from.htm %uaquot User agent,格式为:"Mozilla/4.0 (compatible, ...)" %ua User agent,格式为:Mozilla/4.0_(compatible...) %gzipin mod_gzip comdivssion input bytes: In:XXX %gzipout mod_gzip comdivssion output bytes & ratio: Out:YYY:ZZpct. %gzipratio mod_gzip comdivssion ratio: ZZpct. %deflateratio mod_deflate comdivssion ratio with format: (ZZ) %email EMail sender (for mail log) %email_r EMail receiver (for mail log) %virtualname Web sever virtual hostname. Use this tag when same log contains data of several virtual web servers. AWStats will discard records not in SiteDomain nor HostAliases %cluster If log file is provided from several computers (merged by logresolvemerge.pl), this tag define field of cluster id.%other 如果日志文件有一些字段不被上面的列表包括,使用%other 比如: LogFormat= 1LogFormat= "%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot"
LogSeparator 日志各个字段间的分隔符 比如: LogSeparator=" "
DNSLookup DNS反查,可取的值如下: 0 不用DNS反查 1 完全启用DNS反查 2 DNS反查只从静态的DNS的缓存中取得 比如: DNSlookup=2
DirData 统计结果存放的目录。 注意:如果需要直接在浏览器上更新统计结果的话,这个目录要设为apache用户 (比如nobody)可写。 比如: DirData="/var/lib/awstats"
DirCgi awstats的cgi-bin目录的相对或者绝对URL路径。 这个参数只是在命令行下使用-output选项时才有用 比如: DirCgi="/cgi-bin"
DirIcons awstats的icon目录的相对或者绝对URL路径。 比如: DirIcons="/icon"
SiteDomain 主域名。如果日志里含有多个域名的话,AWStats将过滤掉非此域名的访问。(当然,你的日志格式里得含有域名的信息) 当ShowLinksOnUrl选项设为1时,这个参数用来生成URL路径。 如果是分析mail日志,这里写上mail服务器的域名。 比如: SiteDomain="www.sunnavy.net"
HostAliases 可以在这里写上其他所有可以访问这个站点的域名,IP等等。这些值之间用空格隔开。为了获得最好的性能,这个参数的值越少越好。这个参数还用来分析日志里的referer字段,以区分一个referer URL是本地的还是别的站点的。 还可以使用正则表达式(REGEX[value]),比如: HostAliases = "localhost 127.0.0.1 REGEX[^.*/.myserver/.com$]"
AllowToUpdateStatsFromBrowser 可选值为0或1。 如果设为1的话,将在报告页面里增加一个"update now"的按钮,这样可以在线更新统计结果。 比如: AllowToUpdateStatsFromBrowser=0
AllowFullYearView AWStats是按月来存放数据库的。这使得可以很快地生成统计结果。如果你在命令行下选择-month=all或者在web上选择-year-,AWStats将把一年的数据全部加载以生成统计结果,这将耗费大量的资源。 可选值为: 0 不允许 1 只允许在命令行下使用,web上不可见。 2 只允许在命令行下使用,web上可见但不可用。 3 允许 比如: AllowFullYearView=2可选的设置(不是必需但可以增加AWStats的功能)
EnableLockForUpdate 可选值为0或1。 如果设为1的话,当更新统计结果的时候,AWStats可以在TEMP或者TMP目录设置一个锁文件,这样可以避免同时有多个进程更新,避免可能的冲突以及DoS攻击。 可是,当使用锁文件的时候,你可能会碰到锁文件不能自动删除的问题,就只能手动删除,所以你需要登陆服务器的权限。 比如: EnableLockForUpdate=0
DNSStaticCacheFile AWStats可以通过一个静态(static)的DNS缓存(cache)文件进行DNS反查。这个文件默认的路径为DirData,这个文件不能改变(This file is never changed)。 DNS文件的格式为'minsince1970 ipaddress resolved_hostname'或者只是 'ipaddress resolved_hostname' 比如: DNSStaticCacheFile="dnscache.txt"
DNSLastUpdateCacheFile AWStats可以通过一个静态(static)的DNS缓存(cache)文件进行DNS反查。在每次统计结果更新完后,这个文件会自动消除和重新生成,所以不需要手动创建或改变。这个文件将被放在DirData目录。 只有当DNSLookup=1时,这个选项才有作用。 注意:如果DNSStaticCacheFile存在的话,AWStats将会在检查 DNSStaticCacheFile完后检查这个文件。 比如: DNSLastUpdateCacheFile="dnscachelastupdate.txt"
SkipDNSLookupFor 可以指定某些IP不被DNS反查。这个选项只有在DNSLookup=1时才起作用。IP之间用空格隔开。 注意:可以使用正则表达式。 比如: SkipDNSLookupFor="123.123.123.123 REGEX[^192/.168/.]"
AllowAccessFromWebToAuthenticatedUsersOnly 可选值为0或1 接下来的这两个选项允许你保护你的配置文件不被AWStats访问,如果这个AWStats是被未经认证的web用户访问的话。这样的话,AWStats必须被httpd设为认证访问。 AllowAccessFromWebToAuthenticatedUsersOnly=0AllowAccessFromWebToFollowingAuthenticatedUsers 这个参数指定允许访问统计结果的用户名单,只有在AllowAccessFromWebToAuthenticatedUsersOnly=1时才起作用。 比如: AllowAccessFromWebToFollowingAuthenticatedUsers="sunnavy sunhj"
AllowAccessFromWebToFollowingIPAddresses 当这个参数定义后,用户从浏览器访问统计结果时所用的IP地址将被检查是否在指定的IP里。 比如: AllowAccessFromWebToFollowingIPAddresses="127.0.0.1 123.123.123.1-123.123.123.255"
CreateDirDataIfNotExists 可选值为0和1。 如果DirData目录不存在的话,AWStats将返回一个错误。我们可以让AWStats自行创建这个目录,如果这个值设为1的话。 比如: CreateDirDataIfNotEXists=1
BuildHistoryFormat 我们可以选择AWStats历史数据库的保存格式,"xml"或者"text"。 比如: BuildHistoryFormat=text
BuildReportFormat 生成的统计结果格式,"html"或者"xhtml"。 比如: BuildReportFormat=html
SaveDatabaseFilesWithPermissionsForEveryone 数据库文件是否对所有人可写,可选值为0或1。如果我们想在浏览器上直接更新,这个值我们得设成1。 比如: SaveDatabaseFilesWithPermissionsForEveryone=0
PurgeLogFile 是否清除已经分析过的日志文件,可选值为0或1。 比如: PurgeLogFile=0
ArchiveLogRecords 是否将日志文件归档,可选值为0或1。归档文件放在DirData里。 如果PurgeLogFile设为0,则这个选项将不起作用。 ArchiveLogRecords=0
KeepBackupOfHistoricFiles 是否将历史文件备份,可选值为0或1。 AWStats更新时,将覆盖旧文件,如果这期间机器出了故障的话(比如硬盘满了),我们的历史文件就会丢了。可以将这个选项设为1来备份旧文件(备份文件以.bak结尾) 比如: KeepBackupOfHistoricFiles=0
DefaultFile 默认的index页面的文件名。 比如: DefaultFile="index.html"
SkipHosts 分析时跳过的主机,主机之间用空格隔开。 如果日志已经做了DNS反查,这里必须写主机名,否则得写IP地址。可以使用正则表达式。 比如: SkipHosts="127.0.0.1 192.168.0.1"
SkipUserAgents 分析时跳过的UserAgent,即浏览器的型号,不区分大小写,型号之间用空格隔开,可以使用正则表达式。 如果你想跳过某个机器人访问,应该更新robots.pm文件而不这个选项。 比如: SkipUserAgents="wget curl"
SkipFiles 分析时跳过的URL,URL之间用空格隔开,可以使用正则表达式。 是否区分大小写,由URLNotCaseSensitive决定。 比如: SkipFiles="test.html"
OnlyHosts SkipHost的反义词。 比如: OnlyHosts=""
OnlyUserAgents SkipUserAgents的反义词。 比如: OnlyUserAgents=""
OnlyFiles OnlyFiles的反义词。 比如: OnlyFiles=""
NotPageList 这个列表保存一些URL(文件扩展名),带这些扩展名的URL将被看做 "Hit Only"而不是"Hit"和"Page/Download",因此将不被包括在"TOP Pages/URL report"里。 比如: NotPageList="css js class gif jpg jpeg png bmp"
ValidHTTPCodes 有效的HTTP返回状态码,在该列表之外的均列在错误报告的表中。 比如: ValidHTTPCodes="200 304"HTTP的返回状态码见这里
ValidSMTPCodes 有效的SMTP状态码。 比如: ValidSMTPCodes="1 250"
AuthenticatedUsersNotCaseSensitive 认证的用户名不区分大小写,可选值为0或1。 比如:
AuthenticatedUsersNotCaseSensitive=0
URLNotCaseSensitive URL不区分大小写,可选值为0或1。 比如: URLNotCaseSensitive=0
URLWithAnchor 是否保留URL中的锚。 比如: URLWithAnchor=0
URLQuerySeparators URL中的查询分隔符(QuerySeparators)。 比如: URLQuerySeparators="?;"
URLWithQuery 是否在统计结果中保留查询字符串,可选值为0或1。 如果保留,则"mypage.html?id=x"和"mypage.html?id=y"将被当作两个不同的 URL。 比如: URLWithQuery=0
URLWithQueryWithOnlyFollowingParameters 仅保留本列表里的查询字符串的参数。 只有当URLWithQuery=1时才起作用,并且不能和 URLWithQueryWithoutFollowingParameters共同使用。 比如: URLWithQueryWithOnlyFollowingParameters="param"
URLWithQueryWithoutFollowingParameters 去掉在本列表里的查询字符串的参数。 只有当URLWithQuery=1时才起作用,并且不能和 URLWithQueryWithOnlyFollowingParameters共同使用。 比如: URLWithQueryWithoutFollowingParameters=""
URLRefererWithQuery 是否在统计结果中的Referer页面中保留查询字符串,可选值为0或1。 如果保留,则"mypage.html?id=x"和"mypage.html?id=y"将被当作两个不同的 Referer页面。 比如: URLReferrerWithQuery=0
WarningMessages 是否打开AWStats的提醒消息,这些消息可以帮你找出设置的问题或者帮你更好地使用AWStats,所以打开比较好。 比如: WarningMessages=1
ErrorMessages 当有错误发生时,AWStats根据所发生的错误输出信息。也可以自定义输出的信息。 比如: ErrorMessages=""
DebugMessages 是否打开Debug功能。如果打开的话,当参数含debug=x时,AWStats将输出很多相关信息来帮助我们解决问题。 比如: DebugMessages=0
NbOfLinesForCorruptedLog 检查日志格式是否正确时查看前文件的多少行。如果这些行的日志都是不符和格式的, AWSTats就认为这个日志文件的格式是不对的。 比如: NbOfLinesForCorruptedLog=50
WrapperScript CGI下访问的脚本名。 比如:
WrapperScript="awstats.pl"
DecodeUA 如果web服务器为Roxen,则设为1,否则,设为0 比如: DecodeUA=
MiscTrackerUrl 比如: AWStats可以用一个js脚本检测很多浏览器相关的选项,包括: Screen sizeScreen color depthJava enabledMacromedia Director pluginMacromedia Shockwave pluginRealplayer G2 pluginQuickTime pluginMediaplayer pluginAcrobat PDF plugin如果要支持这个,需要把awstats_misc_tracker.js文件拷贝到web服务器的一个目录(比如/js/),并在主页的最后(之前)加上这个:
