search
Homephp教程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



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



Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
图文详解apache2.4+php8.0的安装配置方法图文详解apache2.4+php8.0的安装配置方法Dec 06, 2022 pm 04:53 PM

本文给大家介绍如何安装apache2.4,以及如何配置php8.0,文中附有图文详细步骤,下面就带大家一起看看怎么安装配置apache2.4+php8.0吧~

Linux apache怎么限制并发连接和下载速度Linux apache怎么限制并发连接和下载速度May 12, 2023 am 10:49 AM

mod_limitipconn,这个是apache的一个非官方模块,根据同一个来源ip进行并发连接控制,bw_mod,它可以根据来源ip进行带宽限制,它们都是apache的第三方模块。1.下载:wgetwget2.安装#tar-zxvfmod_limitipconn-0.22.tar.gz#cdmod_limitipconn-0.22#vimakefile修改:apxs=“/usr/local/apache2/bin/apxs”#这里是自己apache的apxs路径,加载模块或者#/usr/lo

apache版本怎么查看?apache版本怎么查看?Jun 14, 2019 pm 02:40 PM

查看​apache版本的步骤:1、进入cmd命令窗口;2、使用cd命令切换到Apache的bin目录下,语法“cd bin目录路径”;3、执行“httpd -v”命令来查询版本信息,在输出结果中即可查看apache版本号。

超细!Ubuntu20.04安装Apache+PHP8环境超细!Ubuntu20.04安装Apache+PHP8环境Mar 21, 2023 pm 03:26 PM

本篇文章给大家带来了关于PHP的相关知识,其中主要跟大家分享在Ubuntu20.04 LTS环境下安装Apache的全过程,并且针对其中可能出现的一些坑也会提供解决方案,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

nginx,tomcat,apache的区别是什么nginx,tomcat,apache的区别是什么May 15, 2023 pm 01:40 PM

1.Nginx和tomcat的区别nginx常用做静态内容服务和代理服务器,直接外来请求转发给后面的应用服务器(tomcat,Django等),tomcat更多用来做一个应用容器,让javawebapp泡在里面的东西。严格意义上来讲,Apache和nginx应该叫做HTTPServer,而tomcat是一个ApplicationServer是一个Servlet/JSO应用的容器。客户端通过HTTPServer访问服务器上存储的资源(HTML文件,图片文件等),HTTPServer是中只是把服务器

php站用iis乱码而apache没事怎么解决php站用iis乱码而apache没事怎么解决Mar 23, 2023 pm 02:48 PM

​在使用 PHP 进行网站开发时,你可能会遇到字符编码问题。特别是在使用不同的 Web 服务器时,会发现 IIS 和 Apache 处理字符编码的方法不同。当你使用 IIS 时,可能会发现在使用 UTF-8 编码时出现了乱码现象;而在使用 Apache 时,一切正常,没有出现任何问题。这种情况应该怎么解决呢?

如何在 RHEL 9/8 上设置高可用性 Apache(HTTP)集群如何在 RHEL 9/8 上设置高可用性 Apache(HTTP)集群Jun 09, 2023 pm 06:20 PM

Pacemaker是适用于类Linux操作系统的高可用性集群软件。Pacemaker被称为“集群资源管理器”,它通过在集群节点之间进行资源故障转移来提供集群资源的最大可用性。Pacemaker使用Corosync进行集群组件之间的心跳和内部通信,Corosync还负责集群中的投票选举(Quorum)。先决条件在我们开始之前,请确保你拥有以下内容:两台RHEL9/8服务器RedHat订阅或本地配置的仓库通过SSH访问两台服务器root或sudo权限互联网连接实验室详情:服务器1:node1.exa

Linux下如何查看nginx、apache、mysql和php的编译参数Linux下如何查看nginx、apache、mysql和php的编译参数May 14, 2023 pm 10:22 PM

快速查看服务器软件的编译参数:1、nginx编译参数:your_nginx_dir/sbin/nginx-v2、apache编译参数:catyour_apache_dir/build/config.nice3、php编译参数:your_php_dir/bin/php-i|grepconfigure4、mysql编译参数:catyour_mysql_dir/bin/mysqlbug|grepconfigure以下是完整的实操例子:查看获取nginx的编译参数:[root@www~]#/usr/lo

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.