连锁反应 – 关于冰古你不知道的5件事

因为没交电费,昨天停了一天的电。
再次被scavin点名。这次谈的是关于我你不知道的5件事:

1、冰古常用的邮箱名是:zhongygah(是的,邮箱名。);
2、冰古用的邮箱名,其实是他的真名;
3、冰古喜欢吃肉;
4、喜欢留长头发;(但最长不过留半年)
5、很不喜欢现在blog的分类名。(Category name)

还是先把2.0.7 RC1用上吧

wordpress2.0.6刚出不久就有feedburner bug,现在又有hacker发现2.0.6的SQL注入漏洞
别不信邪,还是先用着wordpress2.0.7RC1吧。

WordPress2.0.7RC1 change:
1. worked around a PHP bug for PHP4 < 4.4.3 and PHP5 < 5.1.4 with
register_globals ON

that could lead to SQL injection or other security breaches
2. Feeds should properly show 304 Not Modified headers (a.k.a. the
FeedBurner bug)
instead of mismatched 200/304 headers
3. Backport of another 304 Not Modified fix from trunk (Etag
mismatch on certain hosts would
cause 200 OK and content to always be served, a waste of bandwidth)
4. Deleting WP Pages no longer gives an “Are You Sure?” prompt
5. After deleting a WP Page, you are properly redirected to the Edit
Pages screen
6. Sending an image at original size in IE no longer adds an
incorrect “height” attribute

wordpress升级至2.0.6

升级至2.0.6,过程是极其痛苦的。
为何痛苦?都是地震惹得祸。
最后还是使用SSH(在那些痛苦经历过后,才去support那里问,怎样玩SSH。他回答我说只要在users那里edit用户,选上ssh就可以了,没有说要身份证明?一试,还真行。),三条Shell命令就能把升级搞定。

wget http://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
cp -rpf ./wordpress/* ./your-wp

紧跟wordpress更新,也更新到0.74。
升级完wordpress,也装上了bbpress。用SSH,那个快啊。(一两秒的事情,900kb+/s)

wget http://bbpress.org/latest.tar.gz
tar -xzf latest.tar.gz
cp -rpf ./bbpress/* ./bbs

更多阅读:
1、当然目录要先用cd到域名目录下。
2、wordpress 2.0.5升级到2.0.6?升级 WordPress 2.0.5 到 2.0.6 的步骤
3、初玩SSH?shell使用指南
4、2.0.6也有bug,wordpress 2.0.6的feedburner bug

wordpress 2.0.6的feedburner bug

刚在昨天发布的wordpress 2.0.6,就有人发现此版本的wordpress有个feedburner bug。
大概的意思是说当升级到2.0.6或2.1后,你的feedburner feed将会返回“invalid xml”错误。

具体原因和解决方法看:
英文原版,WordPress 2.0.6 and FeedBurner Disconnects
繁体中文翻译版:WordPress 2.0.6 對 FeedBurner 的 bug

wordpress 2.0.6

wordpress 2.0.6发布了!更新信息如下:
补上了一个安全漏洞
HTML quicktags可以在Apple浏览器Safari上正常使用;
格式化留言,防止它们破坏blog布局;
PHP/FastCGI安装兼容性调整。

为解决这个安全漏洞添加了attribute_escape()函数。
还增加了名为“query”的filter。

下载wordpress2.0.6
Dev Blog: WordPress 2.0.6

修补wordpress的受攻击弱点

多个版本的wordpress都有这个受攻击弱点。

WordPress WordPress (B2) 0.6.2 .1
WordPress WordPress (B2) 0.6.2
WordPress WordPress 2.0.5
WordPress WordPress 2.0.4
WordPress WordPress 2.0.3
WordPress WordPress 2.0.2
WordPress WordPress 2.0.1
WordPress WordPress 2.0
WordPress WordPress 1.5.2
WordPress WordPress 1.5.1 .3
WordPress WordPress 1.5.1 .2
WordPress WordPress 1.5.1
WordPress WordPress 1.5
WordPress WordPress 1.2.2
WordPress WordPress 1.2.1
+ Gentoo Linux
WordPress WordPress 1.2
+ Gentoo Linux 1.4
+ Gentoo Linux
WordPress WordPress 0.71
WordPress WordPress 0.7

但这个弱点已经在2.0.6中修补,但当前流行使用的版本为2.0.5,所以大家还是自己补上吧:
我翻了一下我保存的各个版本的wordpress,不知道为什么也找不到原文中提到的代码。(wordpress应该是没有attribute_escape()函数的)
2.0.5中应该是这样修补的:
打开 your-wordpress/wp-admin/templates.php (应该在114行),找到

echo "<li><a href='templates.php?file=" . wp_specialchars($recent, true) . "'>" . get_file_description(basename($recent)) . "</a></li>";

修改为

echo "<li><a href='templates.php?file=" . wp_specialchars($recent, true) . "'>" . wp_specialchars(get_file_description(basename($recent))) . "</a></li>";

wordpress-1[1][1].5.2、2.0 RC2、2.0.2 – 2.0.4的templates.php原代码是这样的,

echo "<li><a href='templates.php?file=$recent'>" . get_file_description(basename($recent)) . "</a></li>";

修改为

echo "<li><a href='templates.php?file=" . wp_specialchars($recent, true) . "'>" . wp_specialchars(get_file_description(basename($recent))) . "</a></li>";

打开 your-wordpress/wp-admin/templates.php ,找到

echo "<li><a href='templates.php?file=" . attribute_escape($recent) . "'>" . get_file_description(basename($recent)) . "</a></li>";

修改为

echo "<li><a href='templates.php?file=" . attribute_escape($recent) . "'>" . wp_specialchars(get_file_description(basename($recent))) . "</a></li>";

查看更多:WordPress Template.PHP HTML Injection Vulnerability
跨站脚本攻击(XSS)FAQ

还是关于总结2006年的SQL

最近在看关于SQL的资料,这里再来几条SQL语句练习一下。

2006年度最多comment(&trackback&pingback)的posts

SELECT ID, Count( comment_ID ) , post_title
FROM `wp_comments` , `wp_posts`
WHERE comment_post_ID = ID
AND comment_approved = '1'
AND post_date >= '2006-01-01'
AND post_date < '2007-01-01'
GROUP BY ID
ORDER BY 2 DESC

1、更新blogbus to wordpress转换程序 (43 comments)
2、从blogbus跳转到WordPress (31 comments)
3、wordpress2.0 rss import文件分析及oblog导入 (18 comments)
4、我使用的plugins (17 comments)
5、怎样将wordpress从盘古搬到DreamHost (16 comments)

暂时还没想到更多的SQL,想好了再加吧。

Happy New Year!

昨天开始,网络已经慢慢地好了,至少我这里的情况是这样的,不用代理也可以进入DreamHost。
这本应该是昨天要写的一个post。却因为手上没有更多的数据,不能像别的blogger那样总结上一年blog的情况,而作罢。
昨天帮网上一位朋友转换blogbus的备份,忙了一天,可以算是2006年冰古blog的一个写照。

刚才看到wordpress planet中alex的一篇post,提到一些SQL语句是关于2006年blog的一个粗略总结的。我也借此对冰古blog在2006年作个总结吧:
一年发的post篇数为 145
得到的留言数为 463
post的平均字(节)数为 1126.2345
总字(节)数为 163304
(utf8格式下的中文字一个占3个字节)

关于这些SQL语句,要注意的是:
如果你的wp-config.php中$table_prefix不是’wp_’,请修改语句中的’wp_’为你的$table_prefix;
语句中 的全角和半角。

如果你和我一样使用GaMerZ的WP-PostViews统计posts的查看数,那这条SQL语句就是为你准备的,2006年的posts中查看数最多的是:

SELECT meta_value, ID, post_title, post_name
FROM `wp_posts` , `wp_postmeta`
WHERE post_id = ID
AND meta_key = 'views'
AND post_date >= '2006-01-01'
AND post_date < '2007-01-01'
AND post_status = 'publish'
ORDER BY cast( `meta_value` AS DECIMAL ) DESC

冰古blog查看数最多的2006年的posts是:
1、wordpress2.0 rss import文件分析及oblog导入 (3498 views)
2、昨天阅读 (3364 views)
3、更新blogbus to wordpress转换程序 (1408 views)
4、我使用的plugins (1114 views)
5、从blogbus跳转到WordPress (916 views)