diff --git a/README.md b/README.md index 661116a..c1cdf0c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # awstats +AWStats is a free powerful and featureful tool that generates advanced web, streaming, ftp or mail server statistics, graphically. +This log analyzer works as a CGI or from command line and shows you all possible information your log contains, in few graphical web pages. + diff --git a/awstats-6.9-awstats_model_conf.patch b/awstats-6.9-awstats_model_conf.patch new file mode 100644 index 0000000..730e7ab --- /dev/null +++ b/awstats-6.9-awstats_model_conf.patch @@ -0,0 +1,93 @@ +diff -Nru awstats-6.9.orig/wwwroot/cgi-bin/awstats.model.conf awstats-6.9/wwwroot/cgi-bin/awstats.model.conf +--- awstats-6.9.orig/wwwroot/cgi-bin/awstats.model.conf 2008-10-05 13:01:32.000000000 +0200 ++++ awstats-6.9/wwwroot/cgi-bin/awstats.model.conf 2009-07-16 02:08:33.000000000 +0200 +@@ -48,7 +48,7 @@ + # If there are several log files from load balancing servers : + # Example: "/pathtotools/logresolvemerge.pl *.log |" + # +-LogFile="/var/log/httpd/mylog.log" ++#LogFile="/var/log/httpd/mylog.log" + + + # Enter the log file type you want to analyze. +@@ -119,7 +119,7 @@ + # Example for IIS: + # LogFormat = 2 + # +-LogFormat=1 ++LogFormat=4 + + + # If your log field's separator is not a space, you can change this parameter. +@@ -150,7 +150,7 @@ + # Example: "ftp.domain.com" + # Example: "domain.com" + # +-SiteDomain="" ++#SiteDomain="" + + + # Enter here all other possible domain names, addresses or virtual host +@@ -165,7 +165,7 @@ + # Note: You can also use @/mypath/myfile if list of aliases are in a file. + # Example: "www.myserver.com localhost 127.0.0.1 REGEX[mydomain\.(net|org)$]" + # +-HostAliases="localhost 127.0.0.1 REGEX[myserver\.com$]" ++#HostAliases="localhost 127.0.0.1 REGEX[myserver\.com$]" + + + # If you want to have hosts reported by name instead of ip address, AWStats +@@ -200,7 +200,7 @@ + # Example: "C:/awstats_data_dir" + # Default: "." (means same directory as awstats.pl) + # +-DirData="." ++DirData="/var/lib/awstats" + + + # Relative or absolute web URL of your awstats cgi-bin directory. +@@ -209,7 +209,7 @@ + # Example: "/awstats" + # Default: "/cgi-bin" (means awstats.pl is in "/yourwwwroot/cgi-bin") + # +-DirCgi="/cgi-bin" ++DirCgi="/awstats" + + + # Relative or absolute web URL of your awstats icon directory. +@@ -219,7 +219,7 @@ + # Example: "../icon" + # Default: "/icon" (means you must copy icon directories in "/mywwwroot/icon") + # +-DirIcons="/icon" ++DirIcons="/awstatsicons" + + + # When this parameter is set to 1, AWStats adds a button on report page to +@@ -359,7 +359,7 @@ + # Possible values: 0 or 1 + # Default: 0 + # +-CreateDirDataIfNotExists=0 ++CreateDirDataIfNotExists=1 + + + # You can choose in which format the Awstats history database is saved. +@@ -909,7 +909,7 @@ + # Example: "/usr/share/awstats/lang" + # Default: "./lang" (means lang directory is in same location than awstats.pl) + # +-DirLang="./lang" ++DirLang="/usr/share/awstats/lang" + + + # Show menu header with reports' links +@@ -1219,7 +1219,7 @@ + # Example: "/css/awstats_bw.css" + # Default: "" + # +-StyleSheet="" ++StyleSheet="/awstatscss/awstats_default.css" + + + # Those color parameters can be used (if StyleSheet parameter is not used) diff --git a/awstats-created_dir_mode.patch b/awstats-created_dir_mode.patch new file mode 100644 index 0000000..949a385 --- /dev/null +++ b/awstats-created_dir_mode.patch @@ -0,0 +1,12 @@ +diff -dur -x '*~' awstats-6.5.orig1/wwwroot/cgi-bin/awstats.pl awstats-6.5/wwwroot/cgi-bin/awstats.pl +--- awstats-6.5.orig1/wwwroot/cgi-bin/awstats.pl 2005-03-20 19:11:05.000000000 +0100 ++++ awstats-6.5/wwwroot/cgi-bin/awstats.pl 2005-08-21 19:43:31.000000000 +0200 +@@ -1770,7 +1770,7 @@ + if (! $MigrateStats && ! -d $DirData) { + if ($CreateDirDataIfNotExists) { + if ($Debug) { debug(" Make directory $DirData",2); } +- my $mkdirok=mkdir "$DirData", 0766; ++ my $mkdirok=mkdir "$DirData", 0755; + if (! $mkdirok) { error("$PROG failed to create directory DirData (DirData=\"$DirData\", CreateDirDataIfNotExists=$CreateDirDataIfNotExists)."); } + } + else { diff --git a/awstats-httpd.conf b/awstats-httpd.conf new file mode 100644 index 0000000..0443758 --- /dev/null +++ b/awstats-httpd.conf @@ -0,0 +1,20 @@ +# +# Directives to add to your Apache conf file to allow use of AWStats as a CGI. +# Note that path "/usr/local/awstats/" must reflect your AWStats install path. +# +Alias /awstatsclasses "/usr/share/awstats/wwwroot/classes/" +Alias /awstatscss "/usr/share/awstats/wwwroot/css/" +Alias /awstatsicons "/usr/share/awstats/wwwroot/icon/" +Alias /js/awstats_misc_tracker.js "/usr/share/awstats/wwwroot/js/awstats_misc_tracker.js" +ScriptAlias /awstats/ "/usr/share/awstats/wwwroot/cgi-bin/" + +# +# This is to permit URL access to scripts/files in AWStats directory. +# + + Options None + AllowOverride None + Order allow,deny + Allow from all + + diff --git a/awstats.conf b/awstats.conf new file mode 100644 index 0000000..e18dd5a --- /dev/null +++ b/awstats.conf @@ -0,0 +1,8 @@ +Include "/etc/awstats/awstats.model.conf" + +LogFile="/var/log/httpd/access_log" +SiteDomain="localhost" +HostAliases="127.0.0.1 localhost" +DirData="/var/lib/awstats" + + diff --git a/awstats.crontab b/awstats.crontab new file mode 100644 index 0000000..a516cec --- /dev/null +++ b/awstats.crontab @@ -0,0 +1,3 @@ +#!/bin/bash +/usr/bin/awstats_updateall.pl now -configdir=/etc/awstats -awstatsprog=/usr/bin/awstats.pl >/dev/null + diff --git a/awstats.spec b/awstats.spec new file mode 100644 index 0000000..8d67374 --- /dev/null +++ b/awstats.spec @@ -0,0 +1,163 @@ +%define httpdconf_path /etc/httpd +%define awstats_user awstats +%define awstats_nuser 65036 +%define awstats_group apache +%define awstats_home /var/lib/awstats + +Name: awstats +Version: 7.3 +Release: 1mamba +Summary: AWStats is a free log analyzer +Group: Graphical Desktop/Applications/Internet +Vendor: openmamba +Distribution: openmamba +Packager: Tiziana Ferro +URL: http://awstats.sourceforge.net/ +Source0: http://awstats.sourceforge.net/files/awstats-%{version}.tar.gz +Source1: %{name}.crontab +Source2: %{name}-httpd.conf +Source3: %{name}.conf +Patch0: %{name}-6.9-awstats_model_conf.patch +Patch1: %{name}-created_dir_mode.patch +License: GPL +BuildArch: noarch +#Requires: perl-Geo-IP +#Requires: perl-Time-HiRes +#Requires: perl-Storable +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Requires(pre): apache + +%description +AWStats is a free powerful and featureful tool that generates advanced web, streaming, ftp or mail server statistics, graphically. +This log analyzer works as a CGI or from command line and shows you all possible information your log contains, in few graphical web pages. + +%prep +%setup -q +#%patch0 -p1 +#%patch1 -p1 + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +install -d %{buildroot}%{_bindir} +install -d %{buildroot}%{_datadir}/%{name} +install -d %{buildroot}%{_sysconfdir}/{%{name},cron.daily} +install -d %{buildroot}%{awstats_home} +install -d %{buildroot}%{httpdconf_path} + +install -m755 tools/awstats_* %{buildroot}%{_bindir} +install -m755 tools/{logresolvemerge,maillogconvert,urlaliasbuilder}.pl \ + %{buildroot}%{_bindir} + +cp -r wwwroot %{buildroot}%{_datadir}/awstats +mv %{buildroot}%{_datadir}/awstats/wwwroot/cgi-bin/awstats.model.conf \ + %{buildroot}%{_sysconfdir}/%{name} +mv %{buildroot}%{_datadir}/awstats/wwwroot/cgi-bin/{lang,lib,plugins} \ + %{buildroot}%{_datadir}/%{name} + +install %{SOURCE1} %{buildroot}/etc/cron.daily/awstats +install %{SOURCE2} %{buildroot}%{httpdconf_path}/%{name}.conf +install %{SOURCE3} %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf +ln -s %{_datadir}/awstats/wwwroot/cgi-bin/awstats.pl %{buildroot}%{_bindir} + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%pre +/usr/sbin/useradd -g %{awstats_group} -c 'WWW server logs analyzer' \ + -d %{awstats_home} -s '/dev/null' -u %{awstats_nuser} %{awstats_user} \ + 2>/dev/null +/usr/sbin/usermod -g %{awstats_group} %{awstats_user} +exit 0 + +%post +if [ $1 -eq 1 ]; then + grep -q 'Include /etc/httpd/awstats.conf' %{httpdconf_path}/httpd.conf && \ + sed -i 's,.*\(Include /etc/httpd/awstats.conf*\),\1,' \ + %{httpdconf_path}/httpd.conf || \ + cat >> %{httpdconf_path}/httpd.conf << _EOF + +# +# AWStats (WEB Log Analyzer) alias and permissions +# +Include %{httpdconf_path}/%{name}.conf + +_EOF + + [ -e /var/lock/subsys/httpd ] && service httpd reload +fi +exit 0 + +%preun +if [ $1 = 0 ]; then + if [ -r %{httpdconf_path}/httpd.conf ]; then + sed -i 's,\(^Include /etc/httpd/awstats.conf*\),#\1,' \ + %{httpdconf_path}/httpd.conf + [ -e /var/lock/subsys/httpd ] && service httpd reload + fi + /usr/sbin/userdel %{awstats_user} +fi +exit 0 + +%files +%defattr(-,root,root) +%{_bindir}/* +%dir %{_sysconfdir}/awstats +%config(noreplace) %{_sysconfdir}/%{name}/*.conf +%attr(640,root,root) %config(noreplace) %{_sysconfdir}/httpd/%{name}.conf +%attr(640,root,root) %{_sysconfdir}/cron.daily/awstats +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/lang +%{_datadir}/%{name}/lib +%{_datadir}/%{name}/plugins +%dir %{_datadir}/%{name}/wwwroot +%dir %{_datadir}/%{name}/wwwroot/cgi-bin +%attr(755,root,root) %{_datadir}/%{name}/wwwroot/cgi-bin/* +%{_datadir}/%{name}/wwwroot/classes +%{_datadir}/%{name}/wwwroot/css +%{_datadir}/%{name}/wwwroot/icon +%{_datadir}/%{name}/wwwroot/js +%attr(751,%{awstats_user},%{awstats_group}) %{awstats_home} +%doc README.TXT docs/* tools/webmin tools/xslt + +%changelog +* Wed Mar 12 2014 Automatic Build System 7.3-1mamba +- automatic update by autodist + +* Sun Jul 14 2013 Automatic Build System 7.2-1mamba +- automatic update by autodist + +* Wed Mar 13 2013 Automatic Build System 7.1.1-1mamba +- automatic version update by autodist + +* Mon Dec 24 2012 Automatic Build System 7.1-1mamba +- automatic version update by autodist + +* Sun Dec 19 2010 Automatic Build System 7.0-1mamba +- automatic update by autodist + +* Mon Nov 23 2009 Automatic Build System 6.95-1mamba +- automatic update by autodist + +* Thu Jul 16 2009 Automatic Build System 6.9-1mamba +- automatic update by autodist + +* Fri Dec 12 2008 Silvan Calarco 6.8-1mamba +- automatic update by autodist + +* Mon Jun 23 2008 Tiziana Ferro 6.7-2mamba +- update mantainer + +* Thu Jun 12 2008 Tiziana Ferro 6.7-1mamba +- update to 6.7 + +* Fri May 19 2006 Davide Madrisan 6.6-1qilnx +- update to version 6.6 by autospec +- this release fixes the security flaw CVE-2006-2237 (qibug#171) + +* Tue Jan 24 2006 Davide Madrisan 6.5-2qilnx +- apache integration +- added %%post and %%postun + +* Mon Jan 16 2006 Alessandro Ramazzina 6.5-1qilnx +- package created by autospec