写 shell 脚本的时候,需要用到昨天的日期(yesterday, lastday),Linux 和 FreeBSD 虽说都是 *nix 系统,但一个简单的 date 函数居然用法都不一样。
例如,今天是 2007-9-14
FreeBSD:
输出:20070913
Linux:
输出:20070913
看到这里,会发现,Linux 的局限性,他只能输出昨天的,但前天和大前天的之类的日期就没办法了。
我还是比较喜欢 FreeBSD。
写 shell 脚本的时候,需要用到昨天的日期(yesterday, lastday),Linux 和 FreeBSD 虽说都是 *nix 系统,但一个简单的 date 函数居然用法都不一样。
例如,今天是 2007-9-14
FreeBSD:
Linux:
看到这里,会发现,Linux 的局限性,他只能输出昨天的,但前天和大前天的之类的日期就没办法了。
我还是比较喜欢 FreeBSD。
Sep
13leakon.com 这个域名,我在 2004 年就注册了。
那个时候还不太懂技术,就租了一个虚拟主机,随便弄了几个 html 页面, 算是第一个我的个人网站。
后来,用 dreamweaver 弄了一个留言板,搞了一套韩国人做的模板,改成了一个小的动态个人网站。那是 2005 年的春节,马上大学毕业了。
考研来着,分数呢,四科总分加一起,还没人家最差的一门单科的分数高……
有了这个小网站的开发经历,也学了一点 ASP 方面的东西,到 5 月份就开始找工作。
6 月,到了以前的那个公司,开始搞 PHP。这算正式地、系统地学习一门新的语言,开发环境也完全变了,都是 FreeBSD。
我记得 2005 年那会儿,刚听说有 alexa 排名这个东西,后来查了一下,我的这个域名是 100 多万位,那会儿还挺满足的,心想,虽然名次低,但也算在世界排名上挂了号了,呵呵。
正式工作后,比较忙,一直没再管 leakon.com。
时隔 2 年,偶尔再查一下 alexa 排名,我已经降到 800 多万了……
后来,随着学到东西越来越多,发现以前熟悉的东西,长时间不用,就忘了。印象最深的就是半年前有一个想法,是利用 PHP 的一个很不常用的函数搞一个后台程序,那会儿只是实验性质的。
后来又有类似的需求时,怎么也想不起那个函数的名字,也不知道该如何描述,甚是苦闷。
我就想,应该把平时的积累存到一个记事本上,而现在的博客,就是一个很好的平台。
于是,6 月份,就用这个 wordpress 重新搭建了 leakon.com。
慢慢的,积累了几篇文章,大部分都是原创,我觉得,互联网需要丰富的内容,我们在不断获取他人经验的时候,也应该贡献一点自己的心得。最起码,记录下自己的技术积累,以后查的时候也比较方便。
无新插柳,又一次来到 alexa 居然看到自己的排名迅速狂飙!!!
前一段还不是很明显,只是从 800 多万上升到 400 多万。
现在查一下最近一周的排名,居然进前 100 万了!!
我觉得比较有意思的是另一项数据:三月变化趋势。
我的排名上升了 700 多万位!!!
开个玩笑说,如果是增幅的评比,恐怕可以进 Top 100 了吧。
用阿 Q 的思想,那么多烧钱的网站,搞了 2 年,alexa 增幅不过几千名,我这个网站 1 个月,增幅 700 万,是不是更厉害呀。
不过,目前还不是很稳定,说句实话,按照统计,这个 blog 每天也就 30 来个 PV,都是搜索引擎带过来的。
罗嗦半天,不如上几张图。这里可以查看最新的排名情况!
2007-9-7

2007-9-11

2007-9-13

按过去一周的排名,又下降了不少。看来,这点 PV 还不足以稳固在 100 万以内。
这也告诉我,leakon.com 还缺少内容。
我会把我想的、做的都拿出来跟大家分享。
也请大家多支持我。
就 Web 2.0 的驱动力源泉分析,您的回复,或者参与,能够激发我更多的热情去贡献内容!

ISBN 0-9735898-2-5 (php|architect NanoBooks)
336 pages
Publication Date: July 25th, 2005 (available for purchase now!)
Written by Jason E. Sweat
Technical review by Marcus Baker
Table of Contents
Appendices:
本地下载:http://down.leakon.com/software/2007/09/Guide_to_PHP_Design_Patterns.zip

ISBN 0-9738621-0-6 (php|architect NanoBooks)
201 pages
Publication Date: September 5th, 2005 (Available now!)
Written by Ilia Alshanetsky
Technical review by Marco Tabini
With a Foreword by Rasmus Lerdorf
Table of Contents
本地下载:http://down.leakon.com/software/2007/09/Guide_to_PHP_Security.zip
看标题,不太会理解这篇文章的主题,只不过是有着微妙关联的几个软件,按照时间顺序发生在了我的身上。
xampp,是一个集成的 apache + php + mysql + … 的开发环境,如果你是做 web 开发,对各种服务器软件的安装比较头疼,尤其是在 unix 下编译和配置各种软件没有经验的时候,这个软件就能帮大忙了。只要下载回去,解压到 /opt 目录下,然后
#/opt/lampp/lampp start 即可!
/opt/lampp/htdocs 就是你的 web 根目录,所有的环境都默认配好了。
通常,我都是在 vmware 里安装一个 FreeBSD 6,然后装这个 xampp,就立刻有了一个开发环境。
后来, 需要用 xdebug 调试 php 程序,Windows 版的超级简单,下载一个 DLL 文件即可,但 Unix 版的必须得在本机环境中编译才行。
以前编译过 apache 和 php 等软件,第一步都是在安装目录执行 ./configure ,但解压完 xdebug 发现根本没有这个文件,上网站查文档,发现需要执行 phpize。
百度了一把,大概了解到,phpize 是根据源码包中的好像是 config.m4 这个文件,生成 configure 脚本的,目前来说,我也就能领悟到这个层次了。还好,我查了 /opt/lampp 目录下面,有这个 phpize 文件,可以执行。执行完了,目录下面果然出现了 configure 文件,这个 configure 文件会调用 php-config。
php-config 可能就是获得当前 php 的各种环境设置变量的,在编译 xdebug 这种 php 扩展的时候会用到。
用 phpize 和 php-config 做好 configure 后,就要用 make 编译 xdebug 了。
这个时候,问题来了,屏幕刷刷地显示了几屏错误信息后,停在一个严重错误的提示信息下面 。
说是 xdebug 的语法错误。
我想,不会吧,这么出名的开源软件,都是经过很多测试的,不至于编译都过不去。然后自己检查前面的每一项错误信息,都是提示一些 .h 文件找不到,关键的几行是 php/include 目录,编译程序要在这个目录下面找文件,但是这个目录不存在!
这个提醒了我,由于我的 apache 和 php 环境是 xampp 打包的,目录结构和默认的不一样,而且很多文件也没有在系统中注册,是无法自动找到的。
我到朋友的服务器上测试了一下,他的软件都是一项一项安装的,基本都是默认目录。果然不出所料,在那里配置和编译都没有问题。
大概找到了问题的根源,然后在自己的虚拟机上重新安装了 apache 和 php,都是默认安装,然后,重新编译 xdebug,这回可以顺利通过了!
在 FreeBSD 下安装 apache22 会出现类似的 warming:
No such file or directory: Failed to enable the ‘httpready’ Accept Filter
解决方法是:
#kldload accf_http并在 /boot/defaults/loader.conf 中加入下面 2 行,以便下次启动自动装载模块
accf_data_load=”YES”
accf_http_load=”YES”