zoukankan      html  css  js  c++  java
  • Apache服务器Log分析应用实例

    简介:这是Apache服务器Log分析应用实例的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

    class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=321956' scrolling='no'> 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






    产生日志但不包括 图片。


    虚拟主机日志设置


    代码:
    <VirtualHost 12.34.56.78:80>


    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日志文件


    </VirtualHost>



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


    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.


    #


    <Directory "/usr/local/awstats/wwwroot">


    Options None


    AllowOverride None


    Order allow,deny


    Allow from all


    </Directory>






    该配置在运行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






    配置需要认证的目录:


    代码:



    <Directory "/db/htdocs/www/awstat/">


    AuthType Basic


    AuthName "Restricted Files"


    AuthUserFile /usr/local/apache2/passwd/passwords


    Require user loguser


    </Directory>






    其中在 /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中添加


    代码:



    <Directory "/db/htdocs/www/awstat/">


    AuthType Basic


    AuthName "Restricted Files"


    AuthUserFile /usr/local/apache2/passwd/passwords


    Require user loguser


    </Directory>






    如果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



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

    “Apache服务器Log分析应用实例”的更多相关文章 》

    爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具

    http://biancheng.dnbcw.info/php/321956.html pageNo:17
  • 相关阅读:
    StampedLock
    面试题:final关键字
    VTK 图像处理_显示(vtkImageViewer2 & vtkImageActor)
    VTK 图像处理_创建
    VTK 数据读写_图像数据的读写
    VTK 基本数据结构_如何把几何结构&拓扑结构加入到数据集
    VTK 基本数据结构_数据对象&数据集
    VTK 可视化管道的连接与执行
    VTK 坐标系统及空间变换(窗口-视图分割)
    VTK 三维场景基本要素:相机
  • 原文地址:https://www.cnblogs.com/ooooo/p/2257009.html
Copyright © 2011-2022 走看看