搜索
首页php教程php手册Apache 服务器Log分析应用实例

apache|服务器|应用实例

Apache 服务器Log分析应用实例

rhinux 发表于: 2004-11-28 22:11



互联网的飞速发展,无论是传统企业的网站,还是互联网企业,为了了解自己的客户来源,点击率等资料,对网站日志的分析尤为重要,以下就本人所做的日志分析系统与大家分享,希望能对大家有所帮助。





欢迎大家复制,但请大家保留本文的完整,谢谢!!








一,所用软件及工具


1,Apache服务器 官方网址:http://www.apache.org


2,awstats 日志分析软件 官方网址:http://awstats.sourceforge.net/


3,cronolog 日志截取软件 官方网址:http://www.cronolog.org


二,环境构架


1,RedHat AS 3


2,Apache


./configure –prefix=/usr/local/apache2/ --enable-so


make


make install


3, awstats


直接tar到 /usr/local/awstats


4,cronolog


./configure –prefix=/usr/local/cronolog


make


make install


三, 配置


1, apache


a,让apache中的某个虚拟主机产生日志:





全局环境变量设置:


代码:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined


SetEnvIf Request_URI \.gif$ gif-image


SetEnvIf Request_URI \.GIF$ gif-image


SetEnvIf Request_URI \.jpg$ gif-image


SetEnvIf Request_URI \.JPG$ gif-image


SetEnvIf Request_URI \.png$ gif-image


SetEnvIf Request_URI \.swf$ gif-image


SetEnvIf Request_URI \.SWF$ gif-image


SetEnvIf Request_URI \.css$ gif-image


SetEnvIf Request_URI \.CSS$ gif-image


SetEnvIf Request_URI \.js$ gif-image


SetEnvIf Request_URI \.JS$ gif-image


SetEnvIf Request_URI \.ico$ gif-image






产生日志但不包括 图片。


虚拟主机日志设置


代码:



ServerAdmin webmaster@abc.net


DocumentRoot /db/htdocs/www


ServerName www.abc.net


CustomLog "|/usr/local/cronolog/sbin/cronolog /db/logs/www.%Y-%m-%d.log" combined env=!gif-image


#用cronolog截取存放在/db/logs/下的按日期产生的apache日志文件






注:日志文件是针对每一个虚拟主机产生的所以可以配置一台服务器上多个虚拟主机的日志分析


b,别名设置


代码:



#


# Directives to allow use of AWStats as a CGI


#


Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"


Alias /awstatscss "/usr/local/awstats/wwwroot/css/"


Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"


ScriptAlias /awstats/ "/usr/local/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









该配置在运行awstats/tools/awstats_configure.pl 后会自动产生所以不用手动添加。


c,awstats需要cgi的支持如果没有添加cgi可以现在添加


代码:



./apxs -c -i /usr/local/src/httpd-2.0.50/modules/generators/mod_cgi.c






再在httpd.conf 中添加


代码:



LoadModule cgi_module modules/mod_cgi.so






d为了保护日志统计信息需要对某些目录进行认证设置,需要认证模块的支持


代码:



./apxs -c -i /usr/local/src/httpd-2.0.50/..../mod_auth.c






再在httpd.conf 中添加


代码:



LoadModule auth_module modules/mod_auth.so






配置需要认证的目录:


代码:






AuthType Basic


AuthName "Restricted Files"


AuthUserFile /usr/local/apache2/passwd/passwords


Require user loguser









其中在 /usr/local/apache2/passwd/下产生passwords 的密码文件


运行如下代码产生用户名为loguser用户及其密码


代码:



/usr/local/apache2/bin/htpasswd -c /usr/local/apache2/passwd/passwords loguser



注意:先要在 /usr/local/apache2/下建passwd目录


2,Awstats


运行 /usr/local/awstats/tools/awstats_configure.pl


主要设置的是需要输入做统计的主机名的配置文件名如:www.abc.net


接着修改 刚才配置是产生的awstats配置文件 默认位置在:


/etc/awstats/awstats.www.abc.net.con 主要做指定log位置


代码:



LogFile="/db/logs/www.%YYYY-4-%MM-2-%DD-2.log"






创建目录:mkdir /var/lib/awstats/


执行:


代码:



/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.abc.net






更新,update 后可以在浏览器中输入 http://www.abc.net/awstats/awstats.pl 进行访问了。








3,cronolog (基本不用什么修改)


4,crontab的修改


在 crontab中添加如下 命令保证15分钟更新一次,也可以根据你自己的需要修改更新的间隔


代码:



*/15 * * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.abc.net






四,安全性考虑


1, 以上的设置由于要cgi支持,也增加了安全隐患可以用awstats 自带的awstats_buildstaticpages.pl来 生成静态页面 可以添加到crontab中


代码:



*/15 * * * * /usr/local/awstats/tools/awstats_buildstaticpages.pl -update -config=www.abc.net -lang=cn -dir=/db/htdocs/www/awstat/ -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl






这样没15分钟在/db/htdocs/www/awstat/ 下生成各种静态页面





2,保护/db/htdocs/www/awstat/禁止未授权用户访问





在httpd.conf中添加


代码:






AuthType Basic


AuthName "Restricted Files"


AuthUserFile /usr/local/apache2/passwd/passwords


Require user loguser









如果www.abc.net 虚拟主机 主目录为/db/htdocs/www/ 则在浏览器中输入http://www.abc.net/awstat/awstats.www.abc.net.html 就可以通过认真访问静态页面


3,如果用静态页面就不要忘了注释掉


LoadModule cgi_module modules/mod_cgi.so








五,献给我最爱的飞飞。





六,由于本人是初学者,本文略显粗糙,如有任何指点和问题欢迎和我联系,大家相互交流提高 :hoash2003@hotmail.com



欢迎大家复制,但请大家保留本文的完整,谢谢!!



声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中