Featured Posts

CentOS LAMP Setup 很土鳖的问题,浪费我几个小时,终于搞定! 在 CentOS 下使用 xampp 的集成套件搭建 LAMP 环境,启动 Apache 后,用浏览器访问 web 程序,居然提示下载源文件!! 也就是...

Readmore

看看我写的 GFW 小故事 我是一个乖孩子,喜欢上网跟朋友们聊天、玩游戏 警察叔叔说,网上很黄很暴力,我却很傻很天真,不让我再看到我最爱的网站 直到有一天,一个无辜的小鸟被无情地封杀,我才意识到问题的严重性 面对河蟹坚硬的钳子,小鸟不能改变什么,唯一能做的,就是送上几句脱口秀解解气 据说那个墙,又黑又高,看到朋友们发来的结构图,我哭了 我再也看不见可爱的...

Readmore

Apache ReWrite QUERY_STRING 问号 ? 看一条应用中简单的 rewrite 规则: 将请求: http://www.leakon.com/soft/install?ver=2.0 rewrite 为: http://www. leakon.com/my/soft/install.php 配置文件 httpd.conf...

Readmore

  • Prev
  • Next

送别谷歌 Say Goodbye to Google

Posted on : 23-03-2010 | By : leakon | In : Google

4

----------------------------------------------------------------

腾讯常州市网友 ミ王先生 .﹎ 1小时前
北京时间3月23日凌晨3时零3分,谷歌公司高级副总裁、首席法律官大卫德拉蒙德公开发表声明,再次借黑客攻击问题指责中国,宣布停止对谷歌中国搜索服务的“过滤审查”,并将搜索服务由中国内地转至香港。

-----走了还不忘说中国点毛病啊。。!这帮玩意。。.不是个东西

我只用百度。。

----------------------------------------------------------------

腾讯铁岭市网友 青青雨竹 1小时前
终于走了,以后电脑不用自动跳谷歌了

----------------------------------------------------------------

腾讯嘉峪关市网友 小磨猪(空) 1小时前
我一直用的百度,走就走吧,强扭的瓜不甜啊!

----------------------------------------------------------------

腾讯泸州市网友 我想死/huaix 1小时前
我用电脑很多年了!从来都拒绝很多流氓软件安装谷歌!我也从来就没用过谷歌!不知道有啥了不起!我需要的东西在其他网上也能找到!谷歌~请你离开中国吧!

----------------------------------------------------------------

腾讯北京市网友 天箭一号 1小时前
象这样和美国情报局一体的公司早一天退,中国多一份平安,愿所有这样的公司全部退出。

----------------------------------------------------------------

腾讯西安市网友 我是谁谁是我 1小时前
不遵守中国法律,商业政治化就让它滚出中国!

----------------------------------------------------------------

腾讯杭州市网友 小河流水 1小时前
就“狗歌”公司退出中国,对我一般不使用其业务的来说,起不到一点影响,欢迎“狗哥”公司退出,谢谢“狗歌”公司

----------------------------------------------------------------

腾讯株洲市网友 雪花飞舞 1小时前
我从不用谷歌,但我照样能搜索想要的东西

----------------------------------------------------------------

腾讯保定市网友 小哥 1小时前
他早就该走 香港也不应该要他

----------------------------------------------------------------

腾讯铁岭市网友 Z宁共和国 1小时前
我一直用百度! 我们自己国家的!
垃圾!     在中国别那么嚣张

----------------------------------------------------------------

腾讯北京市网友 婲花☆厷孒 1小时前
中国还差一个谷歌吗,笑话!!!!!!!!!!!!!!

----------------------------------------------------------------

腾讯临沂市网友 郑雯茜 1小时前
走就走吧 谁稀罕,我一直百度,比什么都好。基本上没用过谷歌 是个什么鸟东西,只有他自己拿自己当回事,支持中国支持百度支持政府 支持自己的选择!

----------------------------------------------------------------

腾讯湘潭市网友 四年夏天 1小时前
百度是世界上最好的引擎,是全国人民都支持百度,是中国人就顶起来~

----------------------------------------------------------------

腾讯大连市网友 寒床 1小时前
都用百度的,看看大家还是支持百度啊,应该是谷歌根本就没什么用才退出的!!!

----------------------------------------------------------------

腾讯河南省网友 逆水使者 1小时前
什么垃圾玩意啊,用百度不好啊。是中国人就支持百度吧,希望那天谷歌还被人黑!

----------------------------------------------------------------

腾讯白城市网友 天晴の夫君 1小时前
谷歌?听过,但没用过。谷歌滚蛋更好,中国还有百度,支持国货!支持百度!希望中国的搜索网站越来越好!越来越强大!但不能交尿(骄傲)啊!
让外国的东西都滚蛋把!

----------------------------------------------------------------

腾讯菏泽市网友 欣雨梦 1小时前
简直是笑话,什么高级的网站,还值得政府派黑客去攻击,既然让你来大陆经营,就说明了中国政府的诚意,何来攻击一说?肯定是谷歌公司自己违背了中国政府和人民的意愿,自己理亏,才无奈搬家的,

----------------------------------------------------------------

腾讯徐州市网友 诚实 1小时前
有谷歌这个东东吗?我怎么都没有听说过,抵制谷歌、支持百度!!!

----------------------------------------------------------------

腾讯德州市网友 為你存在 1小时前
谷歌走了还有百度 soso 支持国产

----------------------------------------------------------------

腾讯廊坊市网友 宅莮No謿 1小时前
我们有百度!我都没用过谷歌!拜拜!

----------------------------------------------------------------

腾讯湖州市网友 夏天的冰 1小时前
我一直只用百度,谷歌好像没什么新意!所以我宁可百度一下,也不谷歌一下!走了更好!

----------------------------------------------------------------

下面是我说:

走吧,走远一点吧。

天朝没有谷歌,一样是天朝。

谷歌没有天朝,一样是天堂。

天朝人民习惯了被强奸,习惯了一夫多妻制。

你来解放他们,是不可能的,因为他们接受不了。

有那闲功夫干点什么不好?

天朝人民喜欢在规定的时间,规定的地点,打开规定的网页,看规定的内容,思考规定的问题,说规定的话,过规定的生活。

天朝人民不喜欢自由。

恋人分手时,最好的理由是:我们不合适。

我觉得以此来对谷歌这几年跟天朝的关系作总结,挺合适的。

我只能抱一点点幻想地期望,谷歌不要拒绝中国的工程师,毕竟妓院里的女人,不全都是妓女。

看来我的美国VPN代理,还是要长期续费的……

MySQL 多实例运行

Posted on : 18-03-2010 | By : leakon | In : MySQL

0

今天要在服务器上运行多个 MySQL,用不同的端口,彼此隔离数据。

我最先想到的办法是下源码,编译多份,编译的时候设置不同的默认路径、端口和 my.cnf 配置文件位置。

被同事劝止……

人家告诉我不用装多份,只装一份二进制 rpm 版本,然后 copy 多份配置文件,再用不同的命令行参数启动即可。

/usr/sbin/mysqld --user=mysql --skip-external-locking \
	--port=3316 --defaults-file=/etc/my.s1.cnf \
	--basedir=/ --datadir=/var/lib/mysql_s1/ \
	--pid-file=/var/lib/mysql/s1.pid \
	--socket=/var/lib/s1.sock &

/usr/sbin/mysqld --user=mysql --skip-external-locking \
	--port=3326 --defaults-file=/etc/my.s2.cnf \
	--basedir=/ --datadir=/var/lib/mysql_s2/ \
	--pid-file=/var/lib/mysql/s2.pid \
	--socket=/var/lib/s2.sock &

就这么简单!

我曾经用原有的想法,编译过多份 MySQL!

笨死算了~~

顺便说下 --skip-external-locking 这个参数,由此也可引出另一种方式。

MySQL 支持 multi 方式运行多个实例,在 my.cnf 中,每个 [mysql#] 段代表一个实例,# 替换为正整数即可。

看手册的意思,好像是说多个实例可以共用相同的数据目录,还未证实。

但 --skip-external-locking 的说明是,当用 multi 方式启动多个 mysqld server ,多个 server 对同一个 table 进行读写时会锁表。如果你不会同时读写同一张表,那么可以加上这个参数启动 MySQL。

也许可以提高性能吧,回头有空了测试下~

关闭VMware的PC喇叭

Posted on : 17-03-2010 | By : leakon | In : 默认分类

0

在VMWare中运行一些Linux上的软件如vi,出错时PC喇叭会不停地叫,很烦人。 其实只要在 c:\Documents and Settings\用户名\Application Data\VMware\config.ini (如不存在请自行建立)中加入这样一行:

mks.noBeep = "TRUE"

就可以从虚拟硬件上关闭VMWare的PC喇叭。

Duplicate entry 'localhost-' for key 1

Posted on : 17-03-2010 | By : leakon | In : MySQL, PHP

1

导致这个错误的原因:
因为安装系统时设置了hostname为localhost导致mysql在创建表的时候没有创建成功。因此mysql库中user表里没有root这个用户或者说root没有显示出来,无法查看root的状态。这时需要手动创建。然而在安全模式无法直接创建用户,错误见下。
变个方向就能创建了,先给root给予权限,然后刷新表。之后就可以创建了。
一、killall -TERM mysqld
以安全模式启动mysql
/usr/bin/mysqld_safe --skip-grant-tables &
进入mysql
/usr/bin/mysql
mysql> use mysql
Database changed
mysql> select * from user where user='root';
Empty set (0.00 sec)

mysql> grant all privileges on *.* to root@localhost identified by 'linuxtone' with GRANT OPTION;
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute

this statement
mysql> update user set password=password('linuxtone') where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 0 Changed: 0 Warnings: 0

注意单双引号。

mysql> flush privileges;   //注意先刷新下表
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on *.* to root@localhost identified by 'linuxtone' with GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> select * from user where user='root';

后期处理:
/usr/local/mysql/bin/mysqladmin shutdown -uroot -p
刚才的密码
然后正常启动:/usr/bin/mysqld_safe &
/usr/local/mysql/bin/mysql -uroot -p
能正常登录!

二Duplicate entry 'localhost-' for key 1 问题,很可能是你的主机名有问题,比如是localhost?
导致mysql 的root 帐号的三个主机值(分别是%、localhost、主机名)的后二者的名字弄成一样了,导使唯一键值出现重复而禁用该记录了?
朋友的主机名设置成了:localhost 遭成了Duplicate entry 'localhost-' for key 1

设置好正确的主机名仍后重新编译就可以了,朋友安装系统的时候没有注意主机名

用工具提高效率 解决 PhpMyAdmin 乱码

Posted on : 15-03-2010 | By : leakon | In : Efficiency, MySQL, PHP

0

最近做的项目有点特殊,多人共用开发服务器,无法搭建个人独享的开发环境。

连数据库,不能使用客户端的 GUI 工具,本来我已经离不开 SQLyog 了,现在逼我用命令行,我怎么受得了?

欣慰的是,尽管 MySQL server 虽然不在开发服务器上,也没有 root 权限给我的 IP 做授权,但开发服务器的 IP 是在授权列表内的。

我又想起了 PhpMyAdmin 这个好久不用的工具。

在 Dev server 上装好,配好用户名和密码,然后即可访问 MySQL,不过又遇到新问题!

MySQL server、Database、Table 和 Column 的字符集都是 latin1,而写入数据库的字符是 GBK。虽然设计不够合理,但也算勉强能用,用 SecureCRT 的命令行连接 MySQL,是可以看到正确的中文字符的,因为 SecureCRT 设置的是默认的字符集。

但 PhpMyAdmin 却总是乱码!

查了下 Variables 标签,有 2 个关于字符集的高亮提示,意思是全局设置是 latin1,但 character set client 是 utf8。

任凭我怎么改 MySQL connection collation 的设置,都无效。

tail 了一下 MySQL query log,看到 PhpMyAdmin 总是发送

SET CHARACTER SET 'utf8'
SET collation_connection = 'utf8_general_ci'

这 2 条语句!

我又 grep 一下,看到有个文件中的代码,让这 2 条语句被强制执行!

解决 PhpMyAdmin 字符乱码问题 所述的方法修改,即刻解决问题!

这下又能高效的访问 MySQL 啦,我相信打字再快的人,输入一条 Select 语句也没有我点击一下鼠标快!

phpDocumentor PHP 文档生成 CHM

Posted on : 13-03-2010 | By : leakon | In : PHP

1

好久没写新东西了。

最近遇到很头疼的事,好多代码要维护,时间长了,自己写过的代码都想不起来。

要调用某个对象的方法,每次都要打开那个类定义的 PHP 文件,找到方法的定义部分,然后仔细看看参数列表才能想起来怎么用。

最麻烦的是,有时候想不起来那个方法是在哪个类里面定义的,必须得去代码根目录 grep ,然后等半天……

相对比的,我开发程序时,手边必备的几个文档:PHP手册、MySQL手册、HTML手册、CSS手册、Javascript手册,以及最近开始用的 ActionScript手册。这些都是 chm 版本的!

Chm 帮助文件有 2 个最大的好处,一个是索引,另一个是全文检索。

用索引可以一边输入,一边过滤掉不匹配的关键词,迅速定位到想要的那个函数名。

当不知道关键词是什么的时候,可以用 like 语句在 chm 文件里面的每一句话中匹配关键词。

原本,用 Zend Studio 也有代码提示和自动完成,不过这个用 Java 虚拟机运行的 IDE 实在是慢,受不了,也不习惯。

今天花了好长时间,研究 php 文档生成工具,找到了几个,主要都是生成 html 页面的,而且格式很难看,重要的是没有好用的索引,更没有全文搜索,没意思。

PhpDocumentor 支持 chm 生成,这个让我眼前一亮!

简单看了下官方文档,然后就下载了 zip 格式的压缩包,就是这个压缩包,浪费了我好长时间去调试错误!!

设定好 php 源码路径,再设置文档格式,选择 chm,输出了一堆文件,包含 hhc,hhp 等,这些是 chm 的“源码”,需要用 Windows 自带的 HTML Help WorkShop 进行编译,然后才能生成 chm。

而那个 zip 压缩包,居然是有严重 bug 的版本,生成的 hhc 文件,里面有一行错误代码,提示 contents.hhc.tpl 找不到!!!

最开始我没有意识到问题在这里,只是用 WorkShop 反复编译那堆 hhc 文件,总是不成功!我都有放弃的念头了。

后来仔细看错误提示,好像是 hhc 文件的问题,打开一看,才知道是上述原因。

再去 phpDocument 源码里面找 contents.hhc.tpl,真的没有!不过,却有 contents.hhc.tp 这个文件!!!

然后列了下目录,几十个文件,大部分都是 tpl 扩展名,而有几个文件是 tp!!!

靠!什么玩意儿,是程序员马虎了还是打包工具的问题?

重新下了个 tgz 版本的 phpDocument,问题全无,chm 编译顺利!

另外,默认编译的 chm 是不带搜索(全文检索)功能的,更改方式如下:

打开一个项目文件,单击“Project(项目)”选项卡的“Change project options(改变项目选项)”,在“Options(选项)”对话框的“Compiler(编译)”选项卡中选中“Compile Full Text Search Information(编译全文搜索信息)”即可。

附赠命令行范例:

$> php phpdoc -o CHM:default:default -d ../lib/ -t ../docs/ > ../php_doc.log

纠结与释怀

Posted on : 26-02-2010 | By : leakon | In : 猛哥

2

这几天的纠结让我度日如年,伴随我的是焦虑和失眠。好久没有这样的感觉了。

我总是患得患失,这是一种心理问题,在做选择的时候,反复对比各方的优劣,放不下东,也舍不得西。

自己不知道怎么选择,然后反复问家人和朋友,即使问到答案,也不能让自己安心顺从。

幸运的是,在反复纠结之后,我逐渐想明白了一些道理。

选择,就要付出代价,必定有所得有所失,我应该勇敢承担起责任,坦然面对自己的选择带来的变化和影响。

纠结的时候,我感觉自己是个懦弱的人,害怕犯错,害怕不好的结果。

现在,我鼓起勇气,自己做出选择,不管对错,我接受,不后悔。

我要感谢猛哥,花费很多时间和精力,前后沟通,给我提供了非常难得的机会,在我最终没有选择这个机会的时候,仍然支持我的选择,并告诉我他这里的大门永远向我敞开。

此时,时间像突然停止了一样,飞快打字的手,也一下停住了,我反复看着这句话,感觉到眼眶周围热热的,滑滑的……

我想我的勇气,多半来自于猛哥对我的关照。

我只求将来有机会能够报答猛哥的知遇之恩。

是时候为自己的选择努力工作了,大家一起加油!

svn: Can't convert string from 'UTF-8' to native encoding

Posted on : 11-02-2010 | By : leakon | In : Subversion

0

svn 版本库中有文件是以中文字符命名的,在 Linux 下 checkout 会报错:

svn: Can't convert string from 'UTF-8' to native encoding

然后 checkout 程序就退出了!

解决办法很简单,正确设置当前系统的 locale:

export LC_CTYPE="zh_CN.UTF-8"

然后重新 checkout 即可。

注意,根据你的系统字符集设置变量,如果 zh_CN.UTF-8 不行,有可能要改成 GB2312:

export LC_CTYPE="zh_CN.GB2312"

另外,看别人的帖子,有的变量名不同,用的是:

export LANG="zh_CN.UTF-8"

我没这么用,下次遇到问题再说了。

Action Script FlashBug

Posted on : 10-02-2010 | By : leakon | In : Flash

0

最近搞了下 Flash 的 Action Script,水挺深的,完全外行。

遇到一个跨域的问题,域名 front.com 调用 static.net 上面的 flash.swf,由于权限问题导致 Flash 提供的方法不能被 Javascript 调用。

问了一个专门搞 Flash 的“专家”,看了下我调用的代码,抓耳挠腮搞了半天没搞明白,最后给了个结论:你不能引用 dev.cn 上面的 flash.swf,因为跨域,改成 static.net 域名的就好了。

邪了门了!我问:那不一样还是跨域么,dev.cn 跟 static.net 都是跨域,有区别吗?

那 2B 回答道:static.net 都有问题,dev.cn 就更有问题了!

我 TMD 晕死算了!心说怎么碰上你这么个 SB!不会就说不知道,还能少耽误我点时间。装了半天孙子,给出这么一个 SB 结论!

背景资料,我虽然不会开发 Flash,但也知道有 crossdomain.xml 这么个配置文件。我已经用 md5 验证过 dev.cn 和 static.net 都包含此文件且内容严格一致!

后来还是另一位自称“初学者”的兄弟帮我找到了问题,还教了我很多查问题的方法。

比如,在 Firefox 上装一个 FlashBug 插件,再下载一个 Flash Debug Player 10,安装完成后重启 Firefox,就可以输出 Flash 的 trace 信息。

在开发 Flash 的时候,在关键点用 try catch 和 trace 可以确定问题。

果不其然,通过日志发现 ExternalInterface 未定义,然后再看 fla 文件的属性,原来是 version 设置成 Flash Player 6 了,改成 8,再编译,问题立刻消失!

现在心情不错,不仅解决了问题,还学到了解决问题的方法,哈哈~~

原来 Latin1 就是 8859-1

Posted on : 08-02-2010 | By : leakon | In : 默认分类

0

ISO 8859-1,正式编号为ISO/IEC 8859-1:1998,又称Latin-1或“西欧语 言”,是国际标准化组织ISO/IEC 8859的 第一个8位字符集。