YOYO的最新BLOG文章

May
31

今天是全世界少年儿童的节日,首先祝全世界的小朋友们节日快乐!就在这么一个节日里,我想起了一个儿童才会这么想的很天真的话题。

其实这个话题也不是我第一次想过了,我相信很多做IT的人也这么想过。做IT的人很少是在零点之前睡的,因为他们总感觉时间不够用,在写程序和调试程序的过程中,时间就很快的过去了。在此,也向现在还工作在电脑前面的同行们致敬,大家辛苦了,注意休息。

很多时候我听到别人说自己闲的无聊的时候,我就很不解,怎么会闲的无聊呢?我说只要有电脑和网络,我就有做不完的事情。好像这么说显得我很勤奋似的,我倒是没这么想,因为自己也没感觉做了什么,但是时间很快的就过去了。当你在忙碌了一晚上而还有很多事情等着要做的时候,你就会想:如果人不需要睡觉那该多好。当然,这是不可能的,因为睡觉是人的本能。没有充足的睡眠,我们就无法保证第二天有旺盛的精力来投入到工作中去。当午夜的钟声敲过两声之后,我们不得不放下手中的事情,准备休息。也许这个话题,也只能让我们想想而已。

不知不觉间,时间又到凌晨2点多了,写着这么话题的时候更让我想:如果人不需要睡觉该多好。今天就到此吧,我也该休息了,大家晚安!

最后再次祝小朋友们节日快乐!

Tags: ,
Posted in 想说就说
May
30

把这个题目写上之后,我就不知道该怎么写这个话题了,并不是说这个题目无话可谈,而是它被人已经谈滥了。今天把这个话题放在这里,好像已经是旧事重提了,因为我在Google出“搜索建议”的时候写过一篇文章。不过Google和百度的案例是很有代表性的。

论技术,谁都不会相信Google比百度差;论资格,谁都不会相信Google比百度小;论财力,谁都不会相信Google会比百度少。那到底是什么导致Google比百度差的呢?我认为有以下几点:

一、心理效应。

上面我提到了几个方面:技术、资格和财力。这几点不但是Google不比百度差,甚至远远超过百度,那为什么在中国Google就不如百度呢?这和Google中国里面的人的心理效应有关。曾无数次听人说起Google中国里面有多好多好,有多人性化,更重要的一点是money更多,但是这些优势给了他们什么?除了物质的报酬外,还有优越感。而人一点有了优越感,往往容易产生惰性,这点在国内表现的特别突出。举简单的例子来看吧,现在生活在大城市的人很多都看不起外地来的人,因为他们有优越感。优越感往往蒙蔽了我们的双眼,让我们产生惰性,不知上进。成大事者,必定是摸爬滚打一路艰辛走过来的。Google站在这个行业的顶端,给了他们足够的优越感和惰性。
阅读全文 ->

Tags: ,
Posted in Google, 想说就说
May
27

2007年4月,天空维客(www.skywiki.net) 的数据库被空间服务商(不提他的名字了,给他留点面子)关闭了,他们的技术说因为我的数据库是innodb的,所以经常导致mysql的重启,后来还说是我的程序的问题(这两个问题我将在下面加以说明)。从2007年4月份到现在(2007年5月底),我让他们的技术给我断断续续的开过几次,也转移过一次服务器,最终没有给我弄成功,天空维客被迫关闭,于2007年5月27日凌晨删除网站数据,从此在网络上彻底消失了。

我是做技术的,对于服务器、脚本语言和数据库不说是很精通,也还都知道原理,对于这件事情,我说两点我的看法:

1、Innodb是mysql自带的一个数据库引擎,自己的东西导致自己重启,实在说不过去。这根本就是空间提供商技术不到家。
2、我的维客(wiki)使用的是mediawiki程序,全球最大的维基百科都是用的这个程序,说是程序的问题,也实在是荒唐。

对于这件事情,服务商没有给出一条正当的理由就把我的数据库给关闭了,我对此是很生气的,虽然我的网站不大,但是已经间断的带来一点收入了(虽没多少,但很有意义),而且还为我其他网站的发展提供不可或缺的力量,况且现在还处于上升阶段。这件事情我本想和服务商折腾下去的,而考虑到前段时间我和服务商的合作关系还算不错,网站的事我就不再追究了。但是这篇文章我会放在原天空维客的网站首页,作为一种纪念,也有一定的战略意义。如果服务商对此有异议,那最好的解决办法就是请和我联系,我们把这件事情彻底了结。如果是莫名其妙的给我搞点鬼,那我们就更好说了。

看过无数网站的兴衰成败,总结无数网站的经验教训,没想到天空维客会这样消失了,消失的这么没有一点价值,愤怒的同时感觉些许的无奈。这件事情就暂且到此吧,今天我在这里仅宣布这么个消息。

2007年5月27日凌晨,天空维客彻底从网络上消失了。。。

Tags: , ,
Posted in 走狗的路
May
24

今天我的朋友PPOPCN给服务器做了一些调整,把php的运行方式从apache改为CGI了,这样服务器稍微更安全了点。我也算参与了一部分文件目录属性的改动,在更改的过程中遇到不少问题,也让我更深刻的认识到了linux上文件属性里面的秘密,下面是我从PPOPCN那里弄来的一篇文章,给大家看看吧,希望对大家有所帮助。

原文:

如上图所示::

Linux除了有单个用户的权限概念之外,他还有一个组的概念

譬如说 A,B,C,D,四个用户

A,B属于1组
C,D属于2组

当A登陆自己的帐户(FTP,或SSH/Shell等)以后,
“所有权”指的就是A用户自己的对该文件操作的权限
“组”指的就是A所在的小组的对该文件的操作权限
“公共”指的就是除A,B以外的任何人的对该文件的操作权限(可以是浏览你网站的人,还可以是匿名登陆你FTP的人,可以是任何一个可以接触到这个文件的人)

通常,我们习惯用三个数字,来表示当前文件的三个类的属性

执行 = 1
写入 = 2
读取 = 4

阅读全文 ->

Tags: ,
Posted in 网络文摘
May
23

昨天看了一篇文章,是讲CSS技巧的,有几个技巧很不错,拿过来给大家看看。

1、同时使用两个 class

对于一个网页元素中写一个class的情况我们经常见到,而你也可以为网页中的元素指定一个以上的 class,多少个都无所谓。(如果你看过 Google Mail 或 Google Reader 的代码会发现,他们大量应用这种方法控制显示),例如:

<p class="text side">...</p>

p 会同时被应用 text 和 side 两个 CSS 类。

2、为一个页面指定最小宽度和最大宽度
我们知道 CSS 中有个 min-width 属性,但并不是每个浏览器都能支持它(可恶的 IE),此外,我们也无法对 body 指定 min-width,因此我们可以使用下面的方案来解决:

<p id="container">...<!-- div--></p>
#container
{
min-width: 600px;
width:expression(document.body.clientWidth &lt; 600? " 600px": "auto" );
}

当然,你也可以进一步发挥,同时指定一个 max-width

#container
{
min-width: 600px;
max-width: 1200px;
width:expression(document.body.clientWidth &lt; 600? " 600px" : document.body.clientWidth &gt; 1200? " 1200px" : "auto");
}

阅读全文 ->

Tags: ,
Posted in 网络文摘
May
20

由于这个问题找的人还是非常多,所以今天我把它从我原来的blog上转过来,希望对大家有所帮助。

这篇文章是我去年的时候写的,那时候还没用PHP,所以闰年的计算方法没有PHP的,今天在这里补充上这段代码,$y代表年份:

第一种算法:

if($y%400==0 || ($y%4==0 && $y%100!=0)){
echo "";
}else{
echo "不是";
}

第二种算法:

if($y%4==0 && ($y%400==0 || $y%100!=0)){
echo "";
}else{
echo "不是";
}

重看自己写的文章,发现自己总结的两条判断条件有点模糊,可能不看程序还真看不出来,那我就再总结一下。

判断某一年是不是闰年的条件是:能被4整除且不可以被100整除,或者能被400整除。
阅读全文 ->

May
17

这几天,网站在更换服务器。从前天开始,所有的网站都陆续的更换到新的服务器上了,今天算是全部转移过来了,把战线拉长了点,基本没影响网站的正常访问。

新的服务器性能更稳定,速度更快了,经北京的一位朋友测试,全球的平均速度都不错,他甚至连非洲那边都测试到了。服务器上的空间也增加了不少,有需要空间的朋友可以和我联系,都是自己的服务器,没那么严格而死板的限制。

网站数据转移的过程中,我也顺便更新了一下blog的版本,从2.02sp2升级到了2.03sp1。这次blog升级,功能完善了不少,防垃圾引用的功能也更强了。本来是没打算升级的,因为网上很多人说升级失败,出现很多错误,于是一直没升级,而且也在想换为wordpress,但是来回导数据也比较麻烦,最终还是借服务器更换的空儿升级了一下。升级过程中没遇到什么大问题,对于那些升级不成功的朋友,我的建议是按bo-blog的官方2.03sp1的完整安装包里的说明来升级,只要操作正确,就不会有问题。

服务器转移的过程中,我的朋友PPOPCN帮了很大的忙,他对服务器很了解,也是一个非常热爱帮助别人的人。在此对他表示感谢。

经过这几天的折腾,累的不轻,不过网站都搬过来了,也都正常运行了,希望这是一个好的开始。

Tags: , ,
Posted in 走狗的路
May
17

很多时候我们都会用到referer地址,通过判断上一页是从哪里来的,我们可以了解很多信息,但是现在referer并不是那么可靠的数据了,因为我们可以伪造referer地址。这里主要用到了四个函数:fsockopen(),header(),fputs(),fgets(),详细代码如下:

$flag = 0;
$argv = array(
"uid"=>"6c82b9f5m1f4d8eleb21",
"langx"=>"zh-tw",
"rtype"=>"r",
"mtype"=>"3",
"league_id"=>""
);
 
foreach ($argv as $key=>$value) {
if ($flag!=0) {
$params .= "&";
$flag = 1;
}
$params.= $key."="; $params.= urlencode($value);
$flag = 1;
}
$length = strlen($params);
$fp = fsockopen("www.fesite.com",80,$errno,$errstr,10) or exit($errstr."--->".$errno);
$header = "POST:/test.php HTTP/1.0 \r\n";
$header .= "Host:www.fesite.com \r\n";
$header .= "Referer: http://www.fesite.com/ \r\n"; //注意这里
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: ".$length."\r\n";
$header .= "Connection: Close\r\n\r\n";
$header .= $params."\r\n";
fputs($fp,$header);
$inheader = 1;
while (!feof($fp)) {
$line = fgets($fp,1024);
if ($inheader && ($line == "\n" || $line == "\r\n")) {
$inheader = 0;
}
if ($inheader == 0) {
$content.=$line;
}
}
echo $content;
fclose($fp);

阅读全文 ->

Tags: ,
Posted in 刀光剑影