Apache服务器Log分析应用实例_PHP
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
欢迎大家复制,但请大家保留本文的完整,谢谢!!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Peranan dan aplikasi praktikal simbol anak panah dalam PHP Dalam PHP, simbol anak panah (->) biasanya digunakan untuk mengakses sifat dan kaedah objek. Objek adalah salah satu konsep asas pengaturcaraan berorientasikan objek (OOP) dalam PHP Dalam pembangunan sebenar, simbol anak panah memainkan peranan penting dalam mengendalikan objek. Artikel ini akan memperkenalkan peranan dan aplikasi praktikal simbol anak panah, dan menyediakan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik. 1. Peranan simbol anak panah untuk mengakses sifat sesuatu objek Simbol anak panah boleh digunakan untuk mengakses sifat objek. Apabila kita instantiate sepasang

Memadamkan sesuatu yang penting daripada skrin utama anda dan cuba mendapatkannya semula? Anda boleh meletakkan ikon apl kembali pada skrin dalam pelbagai cara. Kami telah membincangkan semua kaedah yang boleh anda ikuti dan meletakkan semula ikon aplikasi pada skrin utama Cara Buat Asal Alih Keluar dari Skrin Utama dalam iPhone Seperti yang kami nyatakan sebelum ini, terdapat beberapa cara untuk memulihkan perubahan ini pada iPhone. Kaedah 1 – Gantikan Ikon Apl dalam Pustaka Apl Anda boleh meletakkan ikon apl pada skrin utama anda terus daripada Pustaka Apl. Langkah 1 – Leret ke sisi untuk mencari semua apl dalam pustaka apl. Langkah 2 – Cari ikon apl yang anda padamkan sebelum ini. Langkah 3 – Hanya seret ikon apl dari pustaka utama ke lokasi yang betul pada skrin utama. Ini adalah gambar rajah aplikasi

Peranan geganti DHCP adalah untuk memajukan paket DHCP yang diterima ke pelayan DHCP lain pada rangkaian, walaupun kedua-dua pelayan berada pada subnet yang berbeza. Dengan menggunakan geganti DHCP, anda boleh menggunakan pelayan DHCP berpusat di pusat rangkaian dan menggunakannya untuk menetapkan alamat IP secara dinamik kepada semua subnet/VLAN rangkaian. Dnsmasq ialah pelayan protokol DNS dan DHCP yang biasa digunakan yang boleh dikonfigurasikan sebagai pelayan geganti DHCP untuk membantu mengurus konfigurasi hos dinamik dalam rangkaian. Dalam artikel ini, kami akan menunjukkan kepada anda cara mengkonfigurasi dnsmasq sebagai pelayan geganti DHCP. Topik Kandungan: Topologi Rangkaian Mengkonfigurasi Alamat IP Statik pada Geganti DHCP D pada Pelayan DHCP Berpusat

Perintah Linuxtee ialah alat baris arahan yang sangat berguna yang boleh menulis output ke fail atau menghantar output ke arahan lain tanpa menjejaskan output sedia ada. Dalam artikel ini, kami akan meneroka secara mendalam pelbagai senario aplikasi arahan Linuxtee, daripada kemasukan kepada kemahiran. 1. Penggunaan asas Mula-mula, mari kita lihat pada penggunaan asas arahan tee. Sintaks arahan tee adalah seperti berikut: tee[OPTION]...[FAIL]...Arahan ini akan membaca data daripada input standard dan menyimpan data ke

Bagaimana untuk memasang sambungan PHPFFmpeg pada pelayan? Memasang sambungan PHPFFmpeg pada pelayan boleh membantu kami memproses fail audio dan video dalam projek PHP dan melaksanakan fungsi seperti pengekodan, penyahkodan, penyuntingan dan pemprosesan fail audio dan video. Artikel ini akan memperkenalkan cara memasang sambungan PHPFFmpeg pada pelayan, serta contoh kod tertentu. Pertama, kita perlu memastikan bahawa PHP dan FFmpeg dipasang pada pelayan. Jika FFmpeg tidak dipasang, anda boleh mengikuti langkah di bawah untuk memasang FFmpe

Sejak pelancaran ChatGLM-6B pada 14 Mac 2023, model siri GLM telah mendapat perhatian dan pengiktirafan yang meluas. Terutama selepas ChatGLM3-6B menjadi sumber terbuka, pembangun penuh dengan jangkaan untuk model generasi keempat yang dilancarkan oleh Zhipu AI. Jangkaan ini akhirnya telah berpuas hati sepenuhnya dengan keluaran GLM-4-9B. Kelahiran GLM-4-9B Untuk memberikan model kecil (10B dan ke bawah) keupayaan yang lebih berkuasa, pasukan teknikal GLM melancarkan model sumber terbuka siri GLM generasi keempat baharu ini: GLM-4-9B selepas hampir setengah tahun penerokaan. Model ini sangat memampatkan saiz model sambil memastikan ketepatan, dan mempunyai kelajuan inferens yang lebih pantas dan kecekapan yang lebih tinggi. Penerokaan pasukan teknikal GLM tidak

Bekerja dengan fail dalam sistem pengendalian Linux memerlukan penggunaan pelbagai arahan dan teknik yang membolehkan pembangun mencipta dan melaksanakan fail, kod, program, skrip dan perkara lain dengan cekap. Dalam persekitaran Linux, fail dengan sambungan ".a" mempunyai kepentingan yang besar sebagai perpustakaan statik. Perpustakaan ini memainkan peranan penting dalam pembangunan perisian, membolehkan pembangun mengurus dan berkongsi fungsi biasa dengan cekap merentas berbilang program. Untuk pembangunan perisian yang berkesan dalam persekitaran Linux, adalah penting untuk memahami cara mencipta dan menjalankan fail ".a". Artikel ini akan memperkenalkan cara memasang dan mengkonfigurasi fail ".a" Linux secara menyeluruh Mari kita terokai definisi, tujuan, struktur dan kaedah mencipta dan melaksanakan fail ".a" Linux. Apa itu L

Golang ialah bahasa pengaturcaraan sumber terbuka yang dibangunkan oleh Google Ia cekap, pantas dan berkuasa dan digunakan secara meluas dalam pengkomputeran awan, pengaturcaraan rangkaian, pemprosesan data besar dan bidang lain. Sebagai bahasa statik yang ditaip kuat, Golang mempunyai banyak kelebihan apabila membina aplikasi sisi pelayan. Artikel ini akan menganalisis kelebihan dan utiliti pelayan Golang secara terperinci, dan menggambarkan kuasanya melalui contoh kod tertentu. 1. Pengkompil Golang berprestasi tinggi boleh menyusun kod ke dalam kod tempatan
