俩教训。。。

最近一周有点郁闷,浪费了太多的时间

  1. 手上有两台朋友公司退下来的低配置的笔记本,跑windows有点问题,但是跑ubuntu来写代码没有任何问题. 于是按一贯的套路去安装virtualbox,vagrant, laravel。。。结果发现vagrant up 就是无法启动虚拟机,总是卡在ssh auth 这一步、、、结果debug了一个星期,才发现原来是CPU 不支持VT-X。。虽然主板支持,但是没有任何用。。nnd。。还是正常使用吧,别用什么虚拟机了
  2. 自己的几个websites 用的是piwik 来做visitor analyse, 但是其中一个站点我今天enable了 cloudflare SSL 就发现无法追踪visitor了。。。突然想起来莫非是没有装ssl 的piwik 无法记录有SSL 的website? 后来一看。。果然还真是这个问题。。。

 

哎,最近诸事不顺啊。。

crond BAD FILE MODE 解决办法

给piwik 设置好cron job 以后,过了一晚上竟然发现cronjob 没有执行,一看log,出现下面的错误:

[root@ga log]# cat cron |grep piwik
Sep 14 08:43:01 ga crond[2754]: (root) BAD FILE MODE (/etc/cron.d/piwik)
Sep 14 14:40:01 ga crond[2754]: (root) BAD FILE MODE (/etc/cron.d/piwik)
Sep 15 00:29:01 ga crond[2754]: (root) BAD FILE MODE (/etc/cron.d/piwik)

google 了一下才发现原来是我自作多情的把piwik这个文件改成了755.。而crond 不喜欢可写文件。。因此只要把这个文件的权限改为644 即可

chmod 644 piwik

就解决了问题

Piwik 使用GeoIP 以及优化(一)

接上篇文章,开始给我的大部分网站使用piwik,但是使用piwik 首先需要的就是enable GeoIP

  1. GeoIP Module for Piwik

         Piwik 有四种方式来使用GeoIP, 分别是default, GeoIP(PHP), GeoIP(PECL), GeoIP(http or nginx)

        在高流量的网站,GeoIP PHP 就会显得速度慢很多,因此这里 GeoIP PECL 成为了piwik 的首选

      在piwik 的官方文档上有在ubuntu/debian 上安装pecl geoip 的办法,因此这里不再多说. 这篇文章主要说说如何安装GeoIP PECL 在RHEL系列的OS 上

      以CentOS为例,首先确保你的系统安装了PECL,如果没有的话就先google 一下安装PECL

     然后以root 执行下列命令

pecl install geoip

  然后有很大的可能性你会得到下面的error:

shtool at '/tmp/pear/temp/geoip/build/shtool' does not exist or is not executable.

  出现这个error 的原因在于/tmp 这个目录不允许执行可执行文件

  解决办法也很简单,就是更改pecl 的默认tmp 目录,比如改为/root/tmp

mkdir /root/tmp 
 pecl config-set temp_dir /root/tmp
 or
 pear config-set temp_dir /root/tmp

pecl config-set这个命令经常会出问题,因此建议使用pear config-set这个命令

更改完pecl 的tmp 默认目录以后,就可以顺利的执行pecl install geoip的命令了

安装完毕后,还剩下最后一件事: 配置php.ini, 添加geoip extension 和 目录

用你喜欢的编辑器,无论是是vi, vim 还是nano,编辑php.ini,添加如下代码:

[PHP]
 ;AFTER THE PHP SECTION NOT BEFORE
 extension=geoip.so

 

[gd] 
;AFTER THE gd SECTION NOT BEFORE 
geoip.custom_directory=/full/linux/path/to/piwik/misc

注意当使用pecl install geoip 的时候, extension=geoip.so 一般会自动添加到php.ini配置文件中,在这里你需要确定下

慎用histats.com

对于正规站点来说, google analytics 无疑是最好的选择

但是对于很多做站群或者website farm 的同学来说, 使用google analytics 会增大被google 关联的机会

因此一直在使用histats,号称全免费

可是今天晚上再debug 源代码的时候发现,所有使用histats 的站点都被添加了 dtscout.com和 dtscdn.com 的CDN JS, 而dtscout.com则是一家数据发现公司

由此可见histats 的免费使用是建立在把数据卖给dtscout.com的基础上

发现了这个问题,就要进行改正

准备把使用histats.com的站点全部迁移到piwik上去

在 centos 上 安装 GEOIP 的插件

最近因为一些特殊的要求,再使用 piwik 做站点的数据统计

piwik 需要 geo的数据库,对piwik 最好的方式是安装geoip 的 pecl 插件

因为不想重新编译安装,所以直接采用yum 来安装,三部即可完成

1 yum安装geoip

yum install geoip geoip-devel

2 安装pecl 的geoip模块

pecl install geoip

3 重启httpd

service httpd restart

很简单的三步即可完成