转自:鸟哥的Linux私房菜
开始安装
几种主要显示的模式
利用小批次档( script )统计每日人数
前言
有没有发现很多的网页都有一个小小的计数器呢?我们这个网页也有这样的一个计数器喔!在鸟哥的Linux与ADSL小站左上角,注意到了没!一般而言,如果是自行设计网页并且使用的是免费空间的网页主机系统,那么常常会看到他们是使用向外部主机申请一个计数器的方法。不过,这个方法有个大缺点,就是你的计数器必须由别人所掌控,如果你需要更多的计数器,那么你只好不断的跟该提供的网站要求啰!不过,如果是自己架站的话呢?呵呵!我们可以直接在自己的网页上安装计数器啦!你可以随意的增加或修改你的计数器,而且,安装计数器的方法很简单喔!简单到你安装完了之后还会偷笑呢!
目前最有名的计数器套件大概是wwwcounter 这一套!就我所知的套件最新应该是wwwcount2.6 版的样子,不知道有没有最新的....。这一套计数器基本上有两种主要的模式,分别是:
- 只要按下『重新整理』就可以增加计数一次;
这两种模式最大的不同在于第二种模式的纪录档案中,不但有次数,还会包含一个IP ,档案内容有点像这样『 2512 192.168.2.100 』,前面的数字是次数,后面的一串咚咚是IP ,所以啰,wwwcount在第二种模式会自动的判别连线的IP位址是否相同!通常我们使用的都是第一种模式,也可以称作为『灌水模式』,他的纪录档案内容只有一个数字,那就是你的次数了!由于没有IP的纪录选项了,因此只要你不断的按『重新整理』,呵呵!你的网页被浏览次数就会不断的增加、增加、再增加!所以啰,在安装这个套件之前,你就要先想一想,你所需要的模式是哪一种哩!?另外, wwwcount套件预设的模式是第二种,所以你的安装的时候需要特别小心喔!
- 按下『重新整理』后,如果与上一次连线的IP 相同的话,那就不增加次数。
开始安装
建议你到中山大学的FTP站去搜寻并下载最新的版本,我们这里提供的可能不会是最新的资料喔!不过,由于最新的版本在安装的步骤上与旧的版本不太一样,您可能需要特别留意一下。我这里介绍的是 wwwcount2.4 版,如果您下载的档案比较新的话,那么以下的资料就不太适合您了!你可以按 这里下载wwwcount2.4版!
安装的方法实在有够简单的,只要几个步骤就行了,那我们就开始吧:
这样就安装完毕了!!
[root @tsai /root]# cd /usr/local/src
[root @tsai src]# tar -zxvf wwwcount2.4.tar.gz
[root @tsai src]# cd wwwcount2.4
Step 1:
[root @tsai wwwcount2.4]# ./Count-config <==开始设定During installation, the directories will be created for you
if they do not exist and if you have the permission to do so.
++
Continue [y|n]? y <==按下y就对了!You need to enter the full path of the directory where you system
keeps the CGI programs. This directory must exist!*cgi-bin dierctory [/usr/local/etc/httpd/cgi-bin]: /usr/local/apache/cgi-bin
上面的路径与你的apache预设的cgi-bin的目录有关!You need to enter the base directory of the counter related stuff.
*Base directory [/usr/local/etc/Counter]: /usr/local/Counter
这是wwwcount安装的目录,我都喜欢安装在/usr/local底下,所以设定成上面的目录。You need to enter the directory of the configuration file.
* Config directory [/usr/local/Counter/conf]: <==按enter就好了!
You will create this file later by running the program "Gen_conf".
* Name of the configuration file [count.cfg]: <==同样使用程式预设的,按enter
You need to enter the directory of the counter data file.
*Data directory [/usr/local/Counter/data]: <==同样使用程式预设的,按enter
You need to enter the directory of the Log file.
*Log directory [/usr/local/Counter/Log]: <==同样使用程式预设的,按enter
* Name of the log file [Count2.4.log]: <==同样使用程式预设的,按enter
You entered:
++++++++++++++++++++++++++++++
CgiBinDir=/usr/local/apache/cgi-bin
BaseDir= /usr/ local/Counter
DigitDir= /usr/local/Counter/digits
ConfDir = /usr/local/Counter/conf
ConfFile= count.cfg
DataDir= /usr/local/Counter/data
LogDir= /usr/local/Counter/Log
LogFile= Count2.4.log
++++++++++++++++++++++++++++++
Everything looks ok [y|n]? y <==确定没问题就按y吧!Step 2:
[root @tsai wwwcount2.4]# ./configure
底下就会开始一些测试你主机情况的一些咚咚啰!Step 3:
[root @tsai wwwcount2.4]# vi Makefile
如果你想要每按一次就增加一次次数的话,那么进入Makefile
档案,找到底下这一行:
#COUNT_RELOAD= -DCOUNT_RELOAD=1 (大约在第33行)
将注解#符号取消,然后储存后退出,这样就可以啰!Step 4:
[root @tsai wwwcount2.4]# make clean; make
这个动作在编译可执行档!Step 5:
[root @tsai wwwcount2.4]# ./Gen-conf
这个动作在设定你的主机资讯与相关设定!
First of all you must know your
.......
Continue [y|n]? y <==按下y吧!* Enter your fully qualified domain name [no default]: tsai.adsldns.org
上面需要输入你的主机名称!需要主机名称与领域名称都需要喔!
* Enter your IP address [no default]: 192.168.1.2
如果像我一样是使用动态IP架站的,那就填我们的内部IP吧!
* Does your host have any nickname [y|n]:? y
如果你的主机有多个名称,那就按y不然的话,按n就可以了!
* Enter your host's nickname (FQDN) [no default]: www.tsai.adsldns.org
如果上面按y这个项目才会出现,就填另一个主机名称吧!
* Do you want to allow automatic file creation [[y|n]? n
通常不希望自行产生档案!会有问题,所以按n啰!
* Do you want the program to run in strict mode [[y|n]? y
是的,需要这个方式的显示!
* Do you want to ignore access hits from your own host [y|n]? y
如果WWW的要求来自你自己的IP ,那么就不要计数!
我这里都选y ,因为自己上去看自己的网页还要计数,
有点偷鸡摸狗了.....按下y之后,以后你自己连上自己的网页,
计数器将不会累加喔!
* Allow using the rgb.txt file [y|n]? y
那就使用吧!Step 6:
[root @tsai wwwcount2.4]# ./Count-install
Your configuration:cgi-bin directory= /usr/local/apache/cgi-bin
conf directory= /usr/local/Counter/conf
conf file= count.cfg
digit directory=/usr/local/Counter/digits
data directory=/usr/local /Counter/data
log directory=/usr/local/Counter/Log
log file=Count2.4.log
rgb file= ./wcount/rgb.txt
================= ==Continue [y|n]? y <==看看你的设定正不正确,对的话就开始安装吧!
*Do you know the user and group id of httpd' child process [y|n]:? y
你知不知道apache的使用者名称与群组!若以Red Hat预设的
apache来安装WWW的话,那么预设的名称为apache ,
如果是以tarball安装的话,那就是nobody啰!
*Enter user id of httpd's child process [no default]:? nobody
*Enter group id of httpd's child process [no default]:? nobody
上面两个咚咚都需要视你的设定而变,如果你不知道的话,
那么进入httpd.conf档案中,去找一下相关的设定就OK了!
几种主要显示的模式
基本上,这样就安装完毕了!要使用的时候,相当的简单,只要在您的网页档案中,在任何地方加入:<img SRC=" http://tsai.adsldns.org/cgi-bin/Count.cgi?dd=A&ft=0&sh=T&pad=Y&df=vbird.dat ">就可以显示出相关的图形了! 而vbird.dat 这个档案则放置在/usr/local/Counter/data 里面,你可以这样造出这个档案:由于Count.cgi 这个程式会自动的去寻找/usr/local/Counter/data 里面的档案,而且读写的人是apache 里面设定的WWW 的启动者(在Red Hat 预设使用apache 这个使用者,但是apache 预设则是nobody ),所以你必须将该档案变更属性才能够显示出来!至于Count.cgi 后面的参数代表的意义为何?这个就需要您自行去探险了!这里将该程式的几个主要的内容资料连结上来,希望对大家有点帮助:(尤其是图示安装范例里面很丰富喔!)
- cd /usr/local/Counter/data
- echo 1 > vbird.dat
- chown nobody:nobody vbird.dat
- chmod 644 vbird.dat
Documentation而关于档案的建置方面,您可以持续建立不同的档案来记录累积的次数资料喔! 加油啰!
图示安装范例
利用小批次档( script )统计每日人数
那如果我想要每日记录上线的人数呢?很简单喔!只要利用以下的小批次档,并且在每天的0:01 分执行一次,就可以啰!2002/ 01/13以来统计人数
当然啰,您的资料中就必须先建立linux_today.dat 档,并且也需要一些相关的html 的咚咚喔!你可以看一下我们的执行成果哩:
zpath="/home/vbird/public_html/linux_menu"
y=`date +%d/%b/20%y`
w=`date +%a`
person=`cat /usr/local/Counter/data/linux_today. dat`
echo $y "(" $w ")" $person > $zpath/zperson.tmp
cat $zpath/zperson.txt >> $zpath/zperson.tmp
cat $zpath/zperson.tmp > $zpath/zperson. txt
cat $zpath/zperson1 > $zpath/zperson.html
cat $zpath/zperson.txt >> $zpath/zperson.html
cat $zpath/zperson2 >> $zpath/zperson.html每日上线人数统计表当然了,相关的zperson.txt zperson1 zperson2 都可以直接在上面的范例中以『检视原始码』的方式来取得喔!加油啰!