误删 site-packages 从来导致 YUM 无法使用的修复方法

Nov 26th, 2009 | Filed under Journal

在客户的服务器上面折腾 trac ,但 PySqlite2 一直编译出错,于是想删掉 PySqlite2 通过其它方式安装。

很自然的想输入如下命令:

#> rm -rf /usr/lib/python2.4/site-packages/PySqlite2

天太冷,没想到手一抖,变成了:

#> rm -rf /usr/lib/python2.4/site-packages/ PySqlite2

于是悲剧就这样发生了,site-packages 瞬间消失… 😥

Centos 中很多重要服务都会依赖 Python,这个白痴的手误虽然不至于摧毁整个系统,但某些服务显然是不能用了,比如 Yum。

Read more…

[PHP] configure: warning: lemon versions supported for regeneration of libsqlite parsers: 1.0 (found: none)

Oct 31st, 2009 | Filed under PHP
Comments Off on [PHP] configure: warning: lemon versions supported for regeneration of libsqlite parsers: 1.0 (found: none)

在 cygwin 中编译 PHP 时遇到下面的问题:

1
2
3
checking for lemon... no
configure: warning: lemon versions supported for regeneration of \
 libsqlite parsers: 1.0 (found: none).

解决方法:

1
2
3
wget http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lemon.c
gcc -o lemon lemon.c
mv lemon /usr/local/bin

重新运行 ./configure 后,问题解决。

Tags: ,

影驰 8800GT 的花屏原因

Jun 9th, 2009 | Filed under Journal
Comments Off on 影驰 8800GT 的花屏原因

2年前 G92 核心推出后,关于 8800GT 的问题就不断,这个问题就是——花屏,原因众说纷纭,却没有定论,而最终 NV 跳出来说 G92 没质量问题,有问题是因为用户 OC 所致,只要将频率调整为公版默认频率即可。OC 是导致花屏的主要原因,当然也不是唯一的原因。

去年4月份的时候,我购进了我的第一块 8800GT——影驰的 8800GT 游戏盒子,之所以说“第一块”,是因为这块显卡在服役不到 1年的时间就寿终正寝了。当时花屏了几次,然后在我正在爽 《COD5》时,屏幕暗下……没有任何 OC 行为,温度也不高,因为当时是11月份,屋子里面冷的都要结冰了,我只能认为这是显卡本身的质量问题。返修回来以后,用了不到1个小时,再次黑屏,无法点亮系统。影驰的代理商也没有2次维修,而是给我调换了一块新的 8800GT,看做工似乎和第一块不是一批货,拿到新卡大约1个多月以后,天气开始慢慢变热,而我的花屏噩梦也终于降临了!

Read more…

Tags:

为 PHP 文件设置默认图标

May 15th, 2009 | Filed under PHP
image

XP 和早期的 Windows 中,你可以通过系统新增或者修改某些类型的文件图标,但是自 Vista 以后,这个功能就被 "Default Programs" 替代了,要修改图标只能依赖一些第三方软件。如果不想使用第三方软件,则可以通过修改注册表来手动更改文件的图标,以下以 PHP 文件为例:

Read more…

Tags: ,

在 Nginx 中配置 Zend Framework

May 11th, 2009 | Filed under PHP
1
2
3
4
5
6
7
location / {
    root   d:/public_html;
    index  index.php index.html index.htm;
    if (!-e $request_filename) {
        rewrite ^/(.*)$ /myproject/public/index.php last;
    }
}

按照配置文件,我的项目地址是:http://localhost/myproject/public,项目是部署在子目录 /myproject/public 里面的,如果你把 document_root 直接设置为 /myproject/public,使用 http://localhost 来访问,那么上述配置删除掉 index.php 前面的目录部分,也就是 rewrite ^/(.*)$ index.php last;

Nginx 不支持 Apache 的 .htaccess 文件,所以需要在 Nginx 配置文件中编写重写规则。Apache 的绝大部分 RewriteRule 命令都可以不做修改的放到 Nginx 中直接使用。你只要把 RewriteRule 改成 rewrite,[L] 改成 last 之类的就可以了,具体可以看一下 Nginx 的 Rewrite 文档。

http://wiki.nginx.org/NginxHttpRewriteModule

题外话,Zend Framework 越来越强大,越来越复杂了,很多追求“简洁”的 Coder 们都已经开始信誓旦旦的说要放弃 ZF 。有点搞笑,这就好像我在说:飞机太快了,价钱太贵了,不适合我,还是自行车好啊!有些人对待问题的看法极端又片面,就好像看电视剧的时候,也总是要把人分为好人和坏人一样,他们的想法很单纯——我不喜欢 ZF,因为臃肿、复杂,所以它是垃圾。

Tags: , ,

Windows 下 Nginx + PHP5 的安装与配置

May 10th, 2009 | Filed under PHP

Nginx 是一个轻量级的高性能 Http WebServer,以事件驱动方式编写,因此相比 Apache 而言,Nginx 更加稳定、性能更好,而且配置简单,资源占用较低。以下是我在 Windows 7 安装中 Nginx 和 PHP5.3 的步骤。

安装 PHP5

首先,从 http://windows.php.net/download/ 下载最新的 PHP 5.3 Windows 版本,这里 PHP 以 FastCGI 模式运行,所以请下载 None Thead Safe 版本。

解压至 C:\php5,把压缩包中的 php.ini-recommended,更名为 php.ini,然后打开修改几个选项:

1
2
3
4
5
6
7
8
9
10
11
error_reporting = E_ALL
display_errors = On
extension_dir = "C:\php5\ext"
 
; 动态扩展,可以根据需要去掉 extension 前面的注释 ; 
; 如加载 PDO, MySQL
extension=php_pdo.dll
extension=php_pdo_mysql.dll
 
; CGI 设置
cgi.fix_pathinfo = 1

Read more…

Tags: , ,

关闭 WordPress 的 Post Revisions 功能

May 9th, 2009 | Filed under WordPress

从 2.6 开始,WordPress 增加了一个叫做 “Post Revision” 的功能,用来保存文章修订历史,这个功能类似在百科类网站中很普遍。但对博客站来说,感觉意义不大,至少对我这样的普通用户来说是不需要的,除非你经常修改你的文章,需要回档到之前的版本,而对于这个功能是否合理,也有很多争论。诸如没有页面设置来关闭这个功能,浪费存储空间,影响性能等等。

现在仍然是通过 wp-config.php 来关闭:

1
2
3
4
/**
 * Turn off "Post Revisions"
 */
define ('WP_POST_REVISIONS', 0);

对于以前存在的 Revisions 可以通过如下的 SQL 语句删除:

1
DELETE FROM wp_posts WHERE post_type = "revision";
Tags:

EAN-13 条形码末位校验码计算

May 4th, 2009 | Filed under JavaScript
Comments Off on EAN-13 条形码末位校验码计算

具体的计算步骤:

  1. 12 位数字从左至右,分别计算奇数位以及偶数位之和
  2. 求奇数位之和
  3. 求偶数位之和,结果乘以 3
  4. 第 2、3 步,2 个计算结果相加
  5. 第 4 步的结果取个位数,用 10 减去个位数得到的数字,即是校验码
  6. 第 5 步个位数为 0 的话,校验码也是 0

Read more…

HTML INPUT 自动关闭输入法

May 1st, 2009 | Filed under JavaScript

Form 表单中常有很多输入框仅仅需要输入数字或者英文等,比如电话号码,商品条码等等,当用户在这些文本框中输入信息时,自动关闭输入法确实比较贴心。我的一个台湾客户称之为“阿呆功能”,想想确实蛮傻瓜的,因为现在很多输入法(比如 Google 拼音),回车就可以直接输入数字或者英文。

但是所有的软件都有其的固定客户使用群,而你所开发的软件的使用者都是白痴也说不定的,他们或许根本不知道世界上有 Google 拼音的存在,很大一种情况就是他们可能还在使用着系统自带的古董——智能 ABC。在这种情况,所谓的“阿呆功能”还是有其存在的价值的。

Read more…

Textarea 域的字数统计

May 1st, 2009 | Filed under JavaScript

在一些流行的网站,比如 Twitter 等,当你在 Textarea 中输入文字,通常会有文字自动统计你已经输入了多少个字符,总计多少个字符,还能输入多少字符,这样的小提示,通常能增强用户体验,像 Twitter 这样限制 140 字的微博客站点,这个功能也变得必不可少。

而我现在正在做的一个项目,其中发送 SMS 的文本框,也必须要提示用户输入的字数,下面就是我的实现方式,采用的 Mootools。基本的计算都已经有了,只要稍作修改,比如限制文字长度,提示剩余多少文字等等,这样就可以拿到自己的项目中使用了。 😉

Read more…