公告板
预览模式: 普通 | 列表

下载:
http://prdownloads.sourceforge.net/awstats/awstats-6.95.tar.gz

安装:
tar zxf awstats-6.95.tgz
awstats的脚本和静态文件缺省都在wwwroot目录下: 将cgi-bin目录下的文件都部署awstats.pl程序到/www/IPAccess/awstats/ 下
mv awstats-6.95/wwwroot/cgi-bin /www/IPAccess/awstats/
更多的批量更新脚本等在tools 目录下,也一并放到 /www/IPAccess/awstats/ 目录下.

修改 httpd.conf 添加以下内容

#################################################################################
################################   awststs   ###############

Alias /awstatsclasses "/www/IPAccess/awstats/classes/"
Alias /awstatscss "/www/IPAccess/awstats/css/"
Alias /awstatsicons "/www/IPAccess/awstats/icon/"
ScriptAlias /awstats/ "/www/IPAccess/awstats/"

<Directory "/www/IPAccess/awstats">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


#################################################################################


修改 httpd.conf 修改以下内容
将Log日志模式换成和awstats一样的格式
  LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" common
  #LogFormat "%h %l %u %t \"%r\" %>s %b" common  原来默认的
 


 配置文件的命名规则修改awstats.modal.conf为awstats.blog.locoy.com.conf
直接放到awstats目录
默认需要修改的
LogFile="/data/apachelogs/blog.locoy.com/Log_%YYYY-0%MM-0%DD-0.log"
AllowToUpdateStatsFromBrowser=1
DirIcons="/awstatsicons"
DirCgi="/awstats"
SiteDomain="blog.locoy.com"


配置IP到城市及国家的转换。

  下载 GeoIP: wget -c http://geolite.maxmind.com/download/geoip/api/c/GeoIP-1.4.6.tar.gz
 %./configure; make
#make install

下载 GeoIP-perl: wget -c http://geolite.maxmind.com/download/geoip/api/perl/Geo-IP-1.38.tar.gz
%perl Makefile.PL; make
#make install


Geo::IPfree安装: wget -c http://search.cpan.org/CPAN/authors/id/B/BR/BRICAS/Geo-IPfree-0.8.tar.gz
%perl Makefile.PL
%make
#make install


MaxMind目前免费提供了GeoIP和GeoIPCityLite数据包:可以定期每个月从以下地址下载:


wget -c  http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
wget -c  http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

下载好后 gunzip解压GeoLiteCity.dat.gz 和  GeoIP.dat.gz得到 GeoIP.dat及GeoLiteCity.dat

此外:http://geolite.maxmind.com/download/geoip/database/下也有CSV源文件提供


完整的配置:通过在配置文件中启用GEOIP相关插件:

LoadPlugin="geoip GEOIP_STANDARD /www/IPAccess/awstats/plugins/IPData/GeoIP.dat"
LoadPlugin="geoip_city_maxmind GEOIP_STANDARD /www/IPAccess/awstats/plugins/IPData/GeoLiteCity.dat"


配置更为详细的纯真IP数据库包

wget -c http://www.ieasy.org/download/qqhostinfo.pm
wget -c http://www.ieasy.org/download/qqwry.pl

下载并复制到 awstats/plugins/目录下
修改,qqwry.pl中:./QQWry.Dat 修改为 /www/IPAccess/awstats/plugins/IPData/QQWry.Dat

awstats.blog.locoy.com.conf中添加
LoadPlugin="qqhostinfo"



添加授权访问目录

修改AllowOverride None 为 AuthConfig

<Directory "/www/IPAccess/awstats">
    Options None
    AllowOverride AuthConfig
    Order allow,deny
    Allow from all
</Directory>

先介绍用密码来保护服务器上的目录。

首先需要建立一个密码文件。这个文件应该放在不能被网络访问的位置,以避免被下载。例如,如果/usr/local/apache/htdocs以外的空间不能被网络访问,那么可以考虑把密码文件放在/usr/local/apache/passwd目录中。

Apache在其安装目录的bin子目录中提供了htpasswd工具,用于建立密码文件,可以这样使用:

htpasswd -c /usr/local/apache/passwd/passwords rbowen

htpasswd会要你输入密码,并要求重新输入以进行确认:

# htpasswd -c /usr/local/apache/passwd/passwords rbowen
New password: mypassword
Re-type new password: mypassword
Adding password for user rbowen

如果htpasswd不在搜索路径中,则必须使用完整路径,如:/usr/local/apache/bin/htpasswd

然后修改httpd.conf.htaccess文件,指示服务器允许哪些用户访问并向用户索取密码。若要保护/usr/local/apache/htdocs/secret目录,则可以将下列指令写入/usr/local/apache/htdocs/secret/.htaccess或者httpd.conf的<Directory /usr/local/apache/apache/htdocs/secret>段。

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /usr/local/apache/passwd/passwords
Require user rbowen

完整效果见 http://blog.locoy.com/awstats/awstats.pl



加入定时更新日志

crontab -e
55 23 * * * /www/IPAccess/awstats/updateall.sh

service crond reload

updateall.sh中加入以下 代码  用awstats_updateall.pl更新所有网站日志
/www/IPAccess/awstats/awstats_updateall.pl -configdir=/www/IPAccess/awstats now



公共的配置信息放入公共配置文件 allsite.conf.common

LogFile="/data/apachelogs/blog.locoy.com/Log_%YYYY-0%MM-0%DD-0.log"
SiteDomain="blog.locoy.com"
AllowToUpdateStatsFromBrowser=1
Include "allsite.conf.common"


awstats看起来已经能正常运行了,但发现里面大部分中文关键字还是会乱码,可以通过启用以下模块解决

修改公共配置文件 allsite.conf.common

在配置文件中把decodeutfkeys这个plugin打开就可以了。在配置文件中找到:

#LoadPlugin="decodeutfkeys" 去掉#

再安装一个 Perl 的 URI:Escape模块

wget http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/URI-1.52.tar.gz -c

解压缩文件
tar zxvf URI-1.52.tar.gz

进入解压缩后目录
cd URI-1.52

然后 perl Makefile.PL
make
make install

更新一下,记录的中文搜索关键字都就可以正常显示了。

成本最小化才有失败的资本

当我们认清楚这一点,就应该更清醒地知道,创业本质上其实就是一种赌博,而要博得收益最大化,就不能只依靠良好的愿望,完美的计划,以及虚无飘渺的运气。大部分时候,计划是靠不住的,愿望总是被现实摧残,而好运气来得比你想象得要晚。

那么,对于一个创业者来说,最佳的策略又是什么?就是用最低的成本不断试错,尝试一切像机会的机会,熬到好运降临。然后,抓住它,死磕它,放大它。正确的策略应该是尽可能多地做尝试和尽可能多地把握正面的机会。
by 马云

成本最小化才有失败的资本 来自一群。很有哲理

服务器问题记录

1、SSH掉线的问题。

修改
/etc/ssh/sshd_config,增加下面两行(本方法经测试应该是可行的)
KeepAlive yes
ClientAliveInterval 60



2、windows和linux服务器之间大数据量转移
我选择了7z压缩

linux下的7z包
wget -c http://cdnetworks-kr-2.dl.sourceforge.net/project/p7zip/p7zip/9.04/p7zip_9.04_x86_linux_bin.tar.bz2
./install.sh

使用 7za命令

新服务器等待上架ing

  原来的两台服务器都是windows系统,跑apm感觉很吃力,apache常挂。最近还常出现mysql连接不上的问题,决定再上架一台新服务器了。
  服务器直接是淘来的,HP DL360 G4P进行了下简单升级。
  基本配置 
  主板芯片组:Intel E7520芯片组  系统总线FSB 800MHZ
  CPU:双 INTEL XEON 3.6G 2颗 800MHZ
  内存:DDR 4*1GB+2*2GB = 8GB ECC REG内存
  硬盘:2 * SATAII 1T

  安装系统CentOS5.4
  原来准备直接上nginx。安装nginx0.8.15试用后配置比较麻烦。原网站rewrite等规则迁移比较麻烦,虚拟目录都不支持,没耐心调试了,还是直接换了apache
  现在的服务器环境:
  Apache2.2.14+MySQL5.1.38+PHP5.2.10  (memcache2.2.5,eaccelerator 0.9.5,phpmyadmin2.11.9.6,zendoptimizer3.3.0等)
  ftp采用vsftpd 2.2.1配合pam_mysql保存虚拟用户。

今晚总算基本调试完毕了,明天直接开车送到天鹅湖后面的省电信机房,虽然托管贵点,第一次将linux用到生产环境,服务器在合肥还是感觉安心点。

linux服务器安装问题

1、在安装mcrypt 的时候提示:

*** Could not run libmcrypt test program, checking why...
*** The test program compiled, but did not run. This usually means
*** that the run-time linker is not finding LIBMCRYPT or finding the wrong
*** version of LIBMCRYPT. If it is not finding LIBMCRYPT, you'll need to set your
*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point
*** to the installed location  Also, make sure you have run ldconfig if that
*** is required on your system
***
*** If you have an old version installed, it is best to remove it, although
*** you may also be able to get things to work by modifying LD_LIBRARY_PATH
***
configure: error: *** libmcrypt was not found


明明已经安装了libmcrypt 2.5.8 ,在/usr/local/bin/也找到了LIBMCRYPT-CONFIG ,所以应该是PATH变量的问题。
创建一个连接
ln -s  /usr/local/bin/libmcrypt-config  /usr/bin/libmcrypt-config

问题解决。


2、Entering directory mysql-test 一直感觉不动了。
直接结束了。几次都未果。后来再make make install一次放在那不管了竟然通过了。还是耐心问题。呵呵


3.安装vsftpd虚拟用户时。db_load找不到。。
yum -y install db4-utils.i386

通过鼠标拖拽实现控件的位置移动和大小变更

下载文件MovableControllerTest.rar (66.25 KB , 下载:11次)



SQLite 多线程开发 线程池问题

火车采集器商业版里面采用的是SQLite数据库存储数据,以前一直被多线程操作SQLite出现错误烦恼,以前的解决办法一直是在操作数据库时lock对象。
经过今天一天的研究,终于解决了这个难题。

问题解决提示:
1.研究System.Data.SQLite.dll (http://sqlite.phxsoftware.com/)附带的source test项目内的 TestCases.cs  多线程单元测试部分代码。

需要对每个连接克隆再使用 ((ICloneable)this.Connection).Clone() as DbConnection;

2.结合使用 ta8210兄的 实现高效的数据库连接池代码(http://blog.csdn.net/ta8210/archive/2007/04/24/1582162.aspx


在多线程多插入(非事务插入)及火车头程序中表现良好。算是基本解决了这个头疼的问题

Editplus 中文正则

editplus的正则我一直觉得相对奇怪一些
[^\x00-\x80]
·此地為某只的個人YY之地,言論僅代表自己的個人觀點,和現實、社會、政治完全沒關係,沒事請不要在此惹事生非。
·若要轉載本blog内容請註明轉載地址和作者名字,禁止無權轉載/盜鏈等無恥行爲。
·如有轉載侵權請聯系刪除。
·謝謝合作。^_^