<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Windix's Blog &#187; Blog</title>
	<atom:link href="http://douzi.org/wp/category/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://douzi.org/wp</link>
	<description>God only helps ones who help themselves</description>
	<lastBuildDate>Fri, 12 Jun 2009 10:25:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>用del.icio.us跟踪blog留言</title>
		<link>http://douzi.org/wp/2006/02/22/%e7%94%a8delicious%e8%b7%9f%e8%b8%aablog%e7%95%99%e8%a8%80/</link>
		<comments>http://douzi.org/wp/2006/02/22/%e7%94%a8delicious%e8%b7%9f%e8%b8%aablog%e7%95%99%e8%a8%80/#comments</comments>
		<pubDate>Wed, 22 Feb 2006 01:56:20 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.douzi.org/wp/index.php/articles/169</guid>
		<description><![CDATA[几个礼拜前就注册了coComment，一直没得用。今天看了天佑介绍coComment的文章，又尝试了一下。
首先可能是我太笨了，弄了半天才搞明白怎么用。(主要是del.icio.us等的bookmarklet先入为主，我一直以为是要留完言点那个coComment!按钮就会post出去，结果浏览器什么反应都没有，很郁闷。)
其实coComment是这样用的:

注册好之后把那个&#8221;coComment!&#8221;的bookmarklet拖到浏览器书签栏上
在你留言之前点一下它，在留言区的文本框下面会出现一个coComment的标志，上面还有你的名字 :)
你留完言直接提交，这条留言就会被coComment记录下来了
也可以点击那个coComment标志，会弹出一个窗口，你可以修改相关信息

coComment的创意很好，但是不足之处大家也都发现了，就是blog系统结构千奇百怪，而目前又没有一个统一的规范来约束留言的格式，所以coComment并不是万金油，至少现在对于blog的一个很重要的分支MovableType就还不支持。coComment作者提出的通过增加javascript变量标识的做法也许也要等到coComment成气候之后才有可能成为现实。
那么回过头来说，我们的目的不就是要记录下我们在各个blog上面漫游的痕迹么，del.icio.us自然在功能上来说就足够了。不过del.icio.us在post的时候还要经过输入相关信息等繁琐的步骤，确实用做这个工作比较让人不爽。不过解决方法还是有的，这不让我想出来了么 :D
下面这个bookmarklet改编自Julian的那个著名的quickpost，请把其中的两处做替换：
[tag]替换为在del.icio.us上面记录留言的tag，可以使用多个，空格隔开。
[name]替换为你在del.icio.us上面的用户名。

javascript:if (window.getSelection) des = window.getSelection(); else if (document.getSelection) des = document.getSelection(); else if (document.selection) des = document.selection.createRange().text; else des = ''; tags = '[tag]'; title = document.title; location.href='http://del.icio.us/[name]?v=2&#038;url='+encodeURIComponent(location.href)+'&#038;description='+encodeURIComponent(title)+'&#038;extended='+encodeURIComponent(des)+'&#038;tags='+encodeURIComponent(tags)+'&#038;submit=save';

这个就是我的: logComment
使用方法:
你留好言后，选中，然后点击这个按钮，搞定。
你还可以使用del.icio.us的功能把你的四散的留言通过javascript显示在你的blog上面呢 :)
Enjoy!
]]></description>
			<content:encoded><![CDATA[<p>几个礼拜前就注册了<a href="http://www.cocomment.com/">coComment</a>，一直没得用。今天看了<a href="http://blog.tinyau.net/archives/2006/02/06/cocomment-aggregate-all-your-comments/">天佑介绍coComment的文章</a>，又尝试了一下。</p>
<p>首先可能是我太笨了，弄了半天才搞明白怎么用。(主要是<a href="http://del.icio.us">del.icio.us</a>等的bookmarklet先入为主，我一直以为是要留完言点那个coComment!按钮就会post出去，结果浏览器什么反应都没有，很郁闷。)</p>
<p>其实coComment是这样用的:</p>
<ol>
<li>注册好之后把那个&#8221;coComment!&#8221;的bookmarklet拖到浏览器书签栏上</li>
<li>在你留言之前点一下它，在留言区的文本框下面会出现一个coComment的标志，上面还有你的名字 :)</li>
<li>你留完言直接提交，这条留言就会被coComment记录下来了</li>
<li>也可以点击那个coComment标志，会弹出一个窗口，你可以修改相关信息</li>
</ol>
<p>coComment的创意很好，但是不足之处大家也都发现了，就是blog系统结构千奇百怪，而目前又没有一个统一的规范来约束留言的格式，所以coComment并不是万金油，至少现在对于blog的一个很重要的分支MovableType就还不支持。coComment作者提出的通过增加javascript变量标识的做法也许也要等到coComment成气候之后才有可能成为现实。</p>
<p>那么回过头来说，我们的目的不就是要记录下我们在各个blog上面漫游的痕迹么，del.icio.us自然在功能上来说就足够了。不过del.icio.us在post的时候还要经过输入相关信息等繁琐的步骤，确实用做这个工作比较让人不爽。不过解决方法还是有的，这不让我想出来了么 :D</p>
<p>下面这个bookmarklet改编自<a href="http://www.julian-bez.de/blog/2005/08/09/extremely-fast-delicious-bookmarking/">Julian的那个著名的quickpost</a>，请把其中的两处做替换：<br />
<strong>[tag]</strong>替换为在del.icio.us上面记录留言的tag，可以使用多个，空格隔开。<br />
<strong>[name]</strong>替换为你在del.icio.us上面的用户名。</p>
<pre>
<blockquote>javascript:if (window.getSelection) des = window.getSelection(); else if (document.getSelection) des = document.getSelection(); else if (document.selection) des = document.selection.createRange().text; else des = ''; tags = '[tag]'; title = document.title; location.href='http://del.icio.us/[name]?v=2&#038;url='+encodeURIComponent(location.href)+'&#038;description='+encodeURIComponent(title)+'&#038;extended='+encodeURIComponent(des)+'&#038;tags='+encodeURIComponent(tags)+'&#038;submit=save';</blockquote>
</pre>
<p>这个就是我的: <a href="javascript:if (window.getSelection) des = window.getSelection(); else if (document.getSelection) des = document.getSelection(); else if (document.selection) des = document.selection.createRange().text; else des = ''; tags = 'comment'; title = document.title; location.href='http://del.icio.us/windix?v=2&#038;url='+encodeURIComponent(location.href)+'&#038;description='+encodeURIComponent(title)+'&#038;extended='+encodeURIComponent(des)+'&#038;tags='+encodeURIComponent(tags)+'&#038;submit=save';">logComment</a></p>
<p>使用方法:<br />
你留好言后，选中，然后点击这个按钮，搞定。</p>
<p>你还可以使用del.icio.us的功能把你的四散的留言通过javascript显示在你的blog上面呢 :)</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2006/02/22/%e7%94%a8delicious%e8%b7%9f%e8%b8%aablog%e7%95%99%e8%a8%80/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>解决WP邮件通知在gmail中的标题乱码</title>
		<link>http://douzi.org/wp/2005/11/26/gmail%e6%a0%87%e9%a2%98%e4%b9%b1%e7%a0%81%e7%a0%94%e7%a9%b6incomplete/</link>
		<comments>http://douzi.org/wp/2005/11/26/gmail%e6%a0%87%e9%a2%98%e4%b9%b1%e7%a0%81%e7%a0%94%e7%a9%b6incomplete/#comments</comments>
		<pubDate>Sat, 26 Nov 2005 10:55:53 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.douzi.org/wp/?p=98</guid>
		<description><![CDATA[每每Blog上面有人回复和有新的trackback，WordPress(包括之前更早用过的MovableType)都会向gmail转发一封通知信，配合gmail notifier的功能，我回复留言都是第一时间的 :P 
唯一可惜的是，通知邮件的正文还好，没什么问题，标题中的中文确总是乱码的。
update: 已有AvP提供的WP插件，请见本文最后更新内容 :)

[E5 8F 60] [E7 89 88] [22] [E7 94 B5] [E8 BD A6] [E7 94 B7] [22] [E5 B0 8F] [E8 AF B4] [E4 B8 8B] [E8 BD BD]
[台][版]["][电][车][男]["][小][说][下][载]
上面就是我上一篇日志的标题，黑体的部分就是gmail收到的标题(subject)中缺少的部分。为什么十六进制8和9开头的字节会被滤掉呢?
经过研究，发现责任不在WP，也不在Gmail，问题出在服务器的sendmail上。Google了一下，看到了&#8221;按RFC标准，header中不能出现八位编码&#8220;的说法，查了一下RFC还真是这样。
RFC4021 &#8211; Registration of Mail and MIME Header Fields 
2.1.11.  Header Field: Subject
   Description:
      [...]]]></description>
			<content:encoded><![CDATA[<p>每每Blog上面有人回复和有新的trackback，WordPress(包括之前更早用过的MovableType)都会向gmail转发一封通知信，配合gmail notifier的功能，我回复留言都是第一时间的 :P </p>
<p>唯一可惜的是，通知邮件的正文还好，没什么问题，标题中的中文确总是乱码的。</p>
<p><strong>update: 已有AvP提供的WP插件，请见本文最后更新内容 :)</strong></p>
<p><span id="more-98"></span></p>
<blockquote><p>[E5 <strong>8F</strong> 60] [E7 <strong>89</strong> 88] [22] [E7 <strong>94</strong> B5] [E8 BD A6] [E7 <strong>94</strong> B7] [22] [E5 B0 <strong>8F</strong>] [E8 AF B4] [E4 B8 <strong>8B</strong>] [E8 BD BD]</p>
<p>[台][版]["][电][车][男]["][小][说][下][载]</p></blockquote>
<p>上面就是我上一篇日志的标题，黑体的部分就是gmail收到的标题(subject)中缺少的部分。为什么十六进制8和9开头的字节会被滤掉呢?</p>
<p>经过研究，发现责任不在WP，也不在Gmail，问题出在服务器的sendmail上。Google了一下，看到了&#8221;<a href="http://anti-spam.org.cn/forums/index.php?showtopic=934">按RFC标准，header中不能出现八位编码</a>&#8220;的说法，查了一下RFC还真是这样。</p>
<p><strong>RFC4021 &#8211; Registration of Mail and MIME Header Fields </strong></p>
<blockquote><p>2.1.11.  Header Field: Subject</p>
<p>   Description:<br />
      Topic of message</p>
<p>   Applicable protocol: Mail [18]</p>
<p>   Status: standard</p>
<p>   Author/change controller:<br />
      IETF  (mailto:iesg@ietf.org)<br />
      Internet Engineering Task Force</p>
<p>   Specification document(s):<br />
      RFC 2822 [18] (section 3.6.5)</p>
<p>   Related information:<br />
      Contains a short string identifying the topic of the message.<br />
      Defined as standard by RFC 822.</p></blockquote>
<p><strong>RFC2822 &#8211; Internet Message Format</strong></p>
<blockquote><p>3.6.5. Informational fields<br />
&#8230;<br />
subject := &#8220;Subject:&#8221; unstructured CRLF</p></blockquote>
<blockquote><p>
unstructured := *([FWS] utext) [FWS] </p>
<p>utext := NO-WS-CTL / %d33-126 / obs-utext ; Non white space controls and The rest of US-ASCII</p>
<p>NO-WS-CTL := %d1-8 / %d11 / %d12 / %d14-31 / %d127 ; US-ASCII control characters that do not include the carriage return, line feed, and white space characters</p></blockquote>
<p>看来真的是这样了，不光高位是1的不行，能出现的只能是ASCII范围在33-126之间的字符外加一些空白符之类的。(BTW，查RFC还真痛苦，又回想起之前写IPSec作业时候的情形了。推荐一个好网站 <a href="http://www.zvon.org">zvon.org</a> ，带交叉参考的，可以减轻些痛苦)</p>
<p>那么到底应该怎么样写subject部分呢?</p>
<p><a href="http://blog.cathayan.org/item/1083">Cathayan提到过</a>：</p>
<blockquote><p>在Gmail里常见标题上写着=?GB18030这样的字符串，看来就是Gmail不支持标题用这咱编码方法，同样GBK也不行，GB2312没有问题。正文内容似乎无所谓。</p></blockquote>
<p>这种似乎是正确的做法&#8230;继续研究一下&#8230;</p>
<p>update:</p>
<p>刚刚翻PHP的手册的<a href="http://au3.php.net/manual/en/ref.mail.php">mail()函数</a>部分，没想到这么容易的就找到的解决方法。</p>
<p><strong>remo at tourist dot sk, 10-Nov-2005 01:36</strong></p>
<blockquote><p>i spent 4 hours finding out how to send UTF-8 plain text mail, so here is my working sollution (PHP 5, Debian):</p>
<p><code>< ?php<br />
$subject = "subject";<br />
$message = "message"</p>
<p>//dont forget quotes around "name", else it won't be displayed correctly in utf-8<br />
$from = "From: \"".$_POST['name']."\" <".$_POST['mail'].">";</p>
<p>mb_language('Neutral');<br />
mb_internal_encoding("UTF-8");<br />
mb_http_input("UTF-8");<br />
mb_http_output("UTF-8");<br />
mb_send_mail($to, $subject, $message, $from);<br />
?></code></p>
<p>hopefully this will be usefull for someone..</p></blockquote>
<p>哈，测试了一下，立杆见影，疗效显著 :P<br />
<img src='http://www.douzi.org/wp/wp-content/gmail_title.jpg' alt='我们的目标是：没有乱码 :D' /></p>
<p>不过这个方法用到了PHP的Multibyte String Functions(多字节字符串函数)，需要你的PHP支持才行。</p>
<p>方法是修改 WP/wp-includes/pluggable-functions.php中的wp_mail函数。 (看这个文件的说明，这个修改也可以做成插件的形式，这样以后WP升级也不成问题了)。修改的部分和我上面引用的差不多，这里提供一个<a href='http://www.douzi.org/wp/wp-content/wp_mail_header.tar.gz' title='wp_mail_header.tar.gz'>完成版下载</a>。(我使用的WP是1.5.2版本)</p>
<p>看了下源码，一方面是subject中的UTF-8中文部分被编码了:<br />
Subject: [Windix's Blog] Comment:=?UTF-8?B?ImdtYWls6a &#8230; cGUpIg==?=<br />
另外正文部分被用Base64编码了。</p>
<p>不过邮件头很怪，居然MIME和Content-Type被设置了两遍。其中第一遍是调用wp_mail的函数设定的，所以就算我在wp_mail中判断了也没用。第二遍是mb_mail函数添加的。</p>
<blockquote><p>MIME-Version: 1.0<br />
From: &#8220;windix&#8221; &lt;windix＠gmail.com&gt;<br />
Content-Type: text/plain; charset=&#8221;UTF-8&#8243;<br />
Mime-Version: 1.0<br />
Content-Type: text/plain; charset=UTF-8<br />
Content-Transfer-Encoding: BASE64</p></blockquote>
<p>不管了，好用就成 :) </p>
<p>终极update :) &#8211; 26/11/05</p>
<p>感谢<a href="http://www.quakemachine.com/blog/">AvP</a>同学，他不但把这个改成了WP的插件，方便使用，而且他最新的改动使用 base64_encode() 函数模拟了 mb_mail() 的过程，现在大家都能用了，Cheers~ :)</p>
<p>当然不免要研究一下了，content部分不用说了，当然是base64编码的，我没想到的subject部分居然也是base64编码的，看来这个技术的敏感力还要加强啊。</p>
<p>关键代码就是这句:<br />
<code>$subject = "=?UTF-8?B?".base64_encode($subject)."?=";</code></p>
<p>前面的UTF-8就不说了，那个B代表的就是之后的内容使用base64方式编码，另一个方式是Q，就是mail中常见的&#8221;Quoted-Printable&#8221;编码方式。详细的内容见RFC-2047第4节。</p>
<p>下载地址: <a href="http://www.quakemachine.com/blog/php/wordpress/554/">http://www.quakemachine.com/blog/php/wordpress/554/</a></p>
<p>最后也感谢<a href="http://www.wordpresscn.com/?p=283">Blogging Pro China</a>对本文的关注，我会继续努力地。:P</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2005/11/26/gmail%e6%a0%87%e9%a2%98%e4%b9%b1%e7%a0%81%e7%a0%94%e7%a9%b6incomplete/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>全面转向FeedBurner，请朋友们更新我的RSS地址</title>
		<link>http://douzi.org/wp/2005/10/16/%e5%85%a8%e9%9d%a2%e8%bd%ac%e5%90%91feedburner%ef%bc%8c%e8%af%b7%e6%9c%8b%e5%8f%8b%e4%bb%ac%e6%9b%b4%e6%96%b0%e6%88%91%e7%9a%84rss%e5%9c%b0%e5%9d%80/</link>
		<comments>http://douzi.org/wp/2005/10/16/%e5%85%a8%e9%9d%a2%e8%bd%ac%e5%90%91feedburner%ef%bc%8c%e8%af%b7%e6%9c%8b%e5%8f%8b%e4%bb%ac%e6%9b%b4%e6%96%b0%e6%88%91%e7%9a%84rss%e5%9c%b0%e5%9d%80/#comments</comments>
		<pubDate>Sun, 16 Oct 2005 11:26:40 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.douzi.org/wp/?p=85</guid>
		<description><![CDATA[经过一段时间的试用，从今天开始我将本Blog的Feed地址全面转向FeedBurner. 请朋友们将您订阅的本Blog的Feed地址更改为http://feed.douzi.org。

(这是一个跳转地址，指向在Feed Burner的实际地址http://feeds.feedburner.com/windix。)
这么做的目的有两个：
1. 防止FeedBurner的潜在问题。最最最倒楣的情况如FeedBurner被GFW封掉等。
2. 我有技术，也有兴趣搞一些Feed的相关研究，可能会在一段时间内自己搞点研究替换掉FeedBurner :P
所以呢，订阅http://feed.douzi.org就一定不会错了 :D
我的Blog“孟母三迁”，经历了从NucleusCMS -> MT -> WP的艰辛过程，所以Feed也是三套共存。
在我从NucleusCMS更换到MT之后，我就把Nucleus的RSS2 Feed文件 xml-rss2.php 通过PHP的Header重定向功能指向了MT的 index.xml :
&#60;?php
  header("Location: /weblog/index.xml");
?&#62;
这次从MT更换到WP，也想如法泡制，但是就不能用那个PHP重定向的方法了，因为MT的feed文件是index.rdf，index.xml等等。解决方法我能想到的只有通过Apache的mod_rewrite功能。方法是修改网站根目录下的.htaccess:
Redirect /weblog/index.xml /wp/wp-feed.php
这几天研究了一下FeedBurner的功能，发现还真的是满强大的，所以决定一劳永逸，把Feed地址改到FeedBurner去。为了防止FeedBurner的潜在问题，就又想出来了前面提到的跳转那一招。这下总可以了吧 :D
本来想写点FeedBurner的介绍性文字，不过Google到米随随的介绍，挺全面的。那么我就说点别的。替换Feed并不是简单的把FeedBurner的新Feed连接加上就OK的，还要相应的修改HTML页面的header部分。支持Feed的浏览器，如Firefox和Opera，实际是通过header部分中这样的一个或者一组语句来辨别Feed的:
&#60;link rel="alternate" type="application/rss+xml" title="RSS 2.0 Feed" href="http://www.douzi.org/wp/index.php/feed/" /&#62;
其中的type属性指出了Feed的类型：
application/atom+xml &#8211; atom
application/rdf+xml &#8211; RSS 1.0
application/rss+xml &#8211; RSS 0.9X / RSS 2.0

所以请将FeedBurner的Feed也加入，并且放在最上面的位置。我建议你至少要保留一个原始的Feed，以方便一些特殊需要的场合。我的更改之后的header:
&#60;link rel="alternate" type="application/rss+xml" title="FeedBurner" href="http://feed.douzi.org" /&#62;
&#60;link rel="alternate" type="application/rss+xml" title="Original Feed" href="http://www.douzi.org/wp/index.php/feed/" /&#62;
注：使用FeedBurner的SmartFeed功能烧制的Feed的结构融合了RSS2和ATOM的特点，兼容性比较好，所以放这个就不用管格式了。
下面这两个分别是上面的语句对应的Firefox和Opera浏览器的效果截图。

以上是Firefox 1.5beta，如果是Firefox 1.0，该图标出现在状态栏右下角。

还有一些RSS聚合软件使用&#8221;feed:&#8221;协议，就如同WP每页最下方所示的那样。你也可以进行相应的更改以方便这些聚合软件。
]]></description>
			<content:encoded><![CDATA[<p>经过一段时间的试用，从今天开始我将本Blog的Feed地址全面转向<a href="http://www.feedburner.com">FeedBurner</a>. 请朋友们将您订阅的本Blog的Feed地址更改为<a href="http://feed.douzi.org">http://feed.douzi.org</a>。<br />
<span id="more-85"></span></p>
<p><em>(这是一个跳转地址，指向在Feed Burner的实际地址<a href="http://feeds.feedburner.com/windix">http://feeds.feedburner.com/windix</a>。)</em></p>
<p>这么做的目的有两个：<br />
1. 防止FeedBurner的潜在问题。<a href="http://www.chedong.com/blog/archives/000738.html">最最最倒楣的情况如FeedBurner被GFW封掉等</a>。<br />
2. 我有技术，也有兴趣搞一些Feed的相关研究，可能会在一段时间内自己搞点研究替换掉FeedBurner :P</p>
<p>所以呢，订阅<a href="http://feed.douzi.org">http://feed.douzi.org</a>就一定不会错了 :D</p>
<p>我的Blog“孟母三迁”，经历了<a href="http://www.douzi.org/wp/index.php/articles/73">从NucleusCMS -> MT -> WP的艰辛过程</a>，所以Feed也是三套共存。</p>
<p>在我从NucleusCMS更换到MT之后，我就把Nucleus的RSS2 Feed文件 xml-rss2.php 通过PHP的Header重定向功能指向了MT的 index.xml :<br />
<code>&lt;?php<br />
  header("Location: /weblog/index.xml");<br />
?&gt;</code></p>
<p>这次从MT更换到WP，也想如法泡制，但是就不能用那个PHP重定向的方法了，因为MT的feed文件是index.rdf，index.xml等等。解决方法我能想到的只有通过Apache的mod_rewrite功能。方法是修改网站根目录下的.htaccess:<br />
<code>Redirect /weblog/index.xml /wp/wp-feed.php</code></p>
<p>这几天研究了一下FeedBurner的功能，发现还真的是满强大的，所以决定一劳永逸，把Feed地址改到FeedBurner去。为了防止FeedBurner的潜在问题，就又想出来了前面提到的跳转那一招。这下总可以了吧 :D</p>
<p>本来想写点FeedBurner的介绍性文字，不过Google到<a href="http://www.misuisui.com/weblog/article.asp?id=92">米随随的介绍，挺全面的</a>。那么我就说点别的。替换Feed并不是简单的把FeedBurner的新Feed连接加上就OK的，还要相应的修改HTML页面的header部分。支持Feed的浏览器，如Firefox和Opera，实际是通过header部分中这样的一个或者一组语句来辨别Feed的:<br />
<code>&lt;link rel="alternate" type="application/rss+xml" title="RSS 2.0 Feed" href="http://www.douzi.org/wp/index.php/feed/" /&gt;</code></p>
<p>其中的type属性指出了Feed的类型：</p>
<blockquote><p>application/atom+xml &#8211; atom<br />
application/rdf+xml &#8211; RSS 1.0<br />
application/rss+xml &#8211; RSS 0.9X / RSS 2.0
</p></blockquote>
<p>所以请将FeedBurner的Feed也加入，并且放在最上面的位置。我建议你至少要保留一个原始的Feed，以方便一些特殊需要的场合。我的更改之后的header:<br />
<code>&lt;link rel="alternate" type="application/rss+xml" title="FeedBurner" href="http://feed.douzi.org" /&gt;<br />
&lt;link rel="alternate" type="application/rss+xml" title="Original Feed" href="http://www.douzi.org/wp/index.php/feed/" /&gt;</code></p>
<p><em>注：使用FeedBurner的SmartFeed功能烧制的Feed的结构融合了RSS2和ATOM的特点，兼容性比较好，所以放这个就不用管格式了。</em></p>
<p>下面这两个分别是上面的语句对应的Firefox和Opera浏览器的效果截图。<br />
<img src='http://www.douzi.org/wp/wp-content/feed_firefox.jpg' alt='Get feed through Firefox' /><br />
<em>以上是Firefox 1.5beta，如果是Firefox 1.0，该图标出现在状态栏右下角。</em></p>
<p><img src='http://www.douzi.org/wp/wp-content/feed_opera.jpg' alt='Get feed through Opera' /></p>
<p>还有一些RSS聚合软件使用&#8221;feed:&#8221;协议，就如同WP每页最下方所示的那样。你也可以进行相应的更改以方便这些聚合软件。</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2005/10/16/%e5%85%a8%e9%9d%a2%e8%bd%ac%e5%90%91feedburner%ef%bc%8c%e8%af%b7%e6%9c%8b%e5%8f%8b%e4%bb%ac%e6%9b%b4%e6%96%b0%e6%88%91%e7%9a%84rss%e5%9c%b0%e5%9d%80/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>从MT到WP&#8211;Blog再次升级</title>
		<link>http://douzi.org/wp/2005/08/06/%e4%bb%8emt%e5%88%b0wp-blog%e5%86%8d%e6%ac%a1%e5%8d%87%e7%ba%a7/</link>
		<comments>http://douzi.org/wp/2005/08/06/%e4%bb%8emt%e5%88%b0wp-blog%e5%86%8d%e6%ac%a1%e5%8d%87%e7%ba%a7/#comments</comments>
		<pubDate>Fri, 05 Aug 2005 15:32:28 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://home.douzi.org/~wfeng/wp/?p=73</guid>
		<description><![CDATA[我的Blog程序再次升级了:
NucleusCMS -> MT -> WordPress

终于换回了我所熟悉的PHP的Blog了。:) 我使用MT的问题有以下几个：
1. 我对Perl不熟悉，不能像PHP这么随心所欲的改动
2. 服务器上的Perl执行起来比PHP慢 (我也不清楚为什么)，本身我访问国内的网站就慢，所以愈发的无法忍受
3. SPAM太猖狂，然而那么慢我也只能一段时间清理一次
PHP的Blog程序我以前最熟悉的就是NucleusCMS，后来换到MT后就没再接触。我换MT的时候正赶上MT3更换许可开始收费，很多人都转向了免费的WordPress，让我对这个我本不看好的Blog程序有点挂目相看。最近我在给51aus做新网站的时候，又仔细的研究了一下WordPress，发现它对UTF-8支持的很好，而且界面模板功能很强大灵活。于是我就再一次的倒戈:)
从MT到WP的转换十分的平滑和完美，请参考车东的文章“[MT2WP] 从MovableType迁移到WordPress笔记”。
我呢，当然也还是要小小的搞一点创新，弄了个本地和远程服务器同步的脚本，这样就双保险了 :P
我现在用的是Gentoo Linux系统，所以我在本地也安了一个WP，内容和远程服务器上的一模一样。我只更新本地的WP，之后用我的脚本将本地MySQL中的WP数据导出，压缩，通过SSH传送到远程服务器上，远程再导入完成更新。当然，我在更新本地之前，也通过这个脚本将远程服务器上WP的内容同步回来。也许你会说，这样如果你在本地更新的时候，远程服务器上有人留言什么的，不就没了么（用数据库行话说，这叫Lost update）。我的解决方案是：本地上传时不包含留言表。
是不是我说的也是一头雾水的? :P 这个脚本的使用条件也比较苛刻，你要有远程服务器的SSH帐号，本地也要需要SSH环境，所以我就不贴了， 如果有需要这个脚本的，请和我联系。
这下速度快了，也没什么理由不更新了:) 原来NucleusCMS的内容就不导过来了，因为很多内容已经失去了时效性了，我会选择一些我感兴趣的话题重新更新的。请继续关注和支持douzi.org～
]]></description>
			<content:encoded><![CDATA[<p>我的Blog程序再次升级了:<br />
NucleusCMS -> MT -> WordPress<br />
<span id="more-73"></span></p>
<p>终于换回了我所熟悉的PHP的Blog了。:) 我使用MT的问题有以下几个：<br />
1. 我对Perl不熟悉，不能像PHP这么随心所欲的改动<br />
2. 服务器上的Perl执行起来比PHP慢 (我也不清楚为什么)，本身我访问国内的网站就慢，所以愈发的无法忍受<br />
3. SPAM太猖狂，然而那么慢我也只能一段时间清理一次</p>
<p>PHP的Blog程序我以前最熟悉的就是NucleusCMS，后来换到MT后就没再接触。我换MT的时候正赶上MT3更换许可开始收费，很多人都转向了免费的WordPress，让我对这个我本不看好的Blog程序有点挂目相看。最近我在给51aus做新网站的时候，又仔细的研究了一下WordPress，发现它对UTF-8支持的很好，而且界面模板功能很强大灵活。于是我就再一次的倒戈:)</p>
<p>从MT到WP的转换十分的平滑和完美，请参考车东的文章“<a href="http://www.chedong.com/blog/archives/000861.html">[MT2WP] 从MovableType迁移到WordPress笔记</a>”。</p>
<p>我呢，当然也还是要小小的搞一点创新，弄了个本地和远程服务器同步的脚本，这样就双保险了 :P</p>
<p>我现在用的是Gentoo Linux系统，所以我在本地也安了一个WP，内容和远程服务器上的一模一样。我只更新本地的WP，之后用我的脚本将本地MySQL中的WP数据导出，压缩，通过SSH传送到远程服务器上，远程再导入完成更新。当然，我在更新本地之前，也通过这个脚本将远程服务器上WP的内容同步回来。也许你会说，这样如果你在本地更新的时候，远程服务器上有人留言什么的，不就没了么（用数据库行话说，这叫Lost update）。我的解决方案是：本地上传时不包含留言表。</p>
<p>是不是我说的也是一头雾水的? :P 这个脚本的使用条件也比较苛刻，你要有远程服务器的SSH帐号，本地也要需要SSH环境，所以我就不贴了， 如果有需要这个脚本的，请和我联系。</p>
<p>这下速度快了，也没什么理由不更新了:) 原来NucleusCMS的内容就不导过来了，因为很多内容已经失去了时效性了，我会选择一些我感兴趣的话题重新更新的。请继续关注和支持douzi.org～</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2005/08/06/%e4%bb%8emt%e5%88%b0wp-blog%e5%86%8d%e6%ac%a1%e5%8d%87%e7%ba%a7/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>My Favourite Blogs</title>
		<link>http://douzi.org/wp/2005/02/19/my-favourite-blogs/</link>
		<comments>http://douzi.org/wp/2005/02/19/my-favourite-blogs/#comments</comments>
		<pubDate>Sat, 19 Feb 2005 04:41:00 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://localhost/~wfeng/wp/?p=65</guid>
		<description><![CDATA[介绍一下我经常访问的，基本上每天都看的一些朋友们的中文Blog。嘿嘿，说是朋友，其中确实有一些是我很熟的好朋友的，另一些实际上都是大侠级人物的，假装我和他们都很熟好了:) 不过这些Blog和我的兴趣方向都很接近，所以颇有志同道合的感觉。
还是要按惯例礼貌的说一声，下面的排列是随机的顺序，无先后之分。还有一些我漏掉没列出来的，我还会再补充的。各网站的连接在我Blog首页的右侧。
BLOG ON 27TH FLOOR
BLOG ON 27TH FLOOR Mirror
主人Cathayan，工作生活在北京，对Open Sourse Software，如Debian Linux，Mozilla Firefox，以及和开源文化相关的一些东西都有着自己独到泼辣的见解。他也经常介绍引进Slashdot等开源社区的优秀文章。mozcn的发起维护者之一。
FREEDOM &#8211; Rongjun Mu&#8217;s Blog
FREEDOM &#8211; Rongjun Mu&#8217;s Blog
主人Mu Rongjun，同样也是对开源很有研究。也是mozcn的发起维护者之一。
iXuX.com&#8217;s Weblog
iXuX.com&#8217;s Weblog
主人etan，我的大学好友，一位工作在北京的沈阳人，现在一日企没日没夜的被小日本残酷的剥削压迫着。这对略有“愤青”倾向的他来说，真是&#8230;他的Blog内容目前以愤青，台湾综艺，免费资源为主。:) 
Talent&#8217;s Blog
Talent&#8217;s Blog
主人Talent，我的大学学弟:P，即将大学毕业。我总是能通过他的Blog了解我刚刚毕业的母校有了什么新变化。
车东 Che, Dong
车东 Che, Dong
主人车东，是我比较敬佩的一位大侠，Linux，网站建设，搜索引擎等方面都很牛。我最欣赏的是他Blog的Slogan:
良好引用，良好结构，良好导航
Well referended and well organized, with easy navigation
kreny&#8217;s Blog
kreny&#8217;s Blog
主人Kreny，是一位在日本留学的我的同龄人，他所学的专业是HR，不过作为兴趣，对计算机的研究也是颇有建树的。他的兴趣方向和我很像，PHP，Linux，搜索引擎，所以我看他写的内容很容易引起共鸣。
Cathome01
cathome01
主人Cathome01，生活工作在日本，因为这个网站名称是“猫屋一号”，大家都尊称他为“猫叔”:)，他也确实很喜欢猫，经常可以看到他用手机拍的猫猫的图片（当然还有美女的图片:P ）。他的网站可以说把MT发挥到了一个极致，各种插件用的很精彩。他也是我们了解日本的一个窗口。
Isaacmao
Isaacmao meta cnblog
主人Issac Mao，cnblog.org的创始人之一。对Blog，社会化软件很有研究。关心Blog，就不能不看他的网站。在他的英文Blog Meta里面还可以看到一些越过Great Firewall的内容:)。来到澳洲后我买的第一本杂志就是包含有Xiao Qiang写的介绍他和中文Blog社区现状的那期New Scientist。
搜索引擎研究::Blog of Search Engine
Blog of Search Engine
主人六翼的天使，对Blog和搜索引擎的研究都很专业，很有技术含量。
竹笋炒肉：Hedong&#8217;s Blog
竹笋炒肉 [...]]]></description>
			<content:encoded><![CDATA[<p>介绍一下我经常访问的，基本上每天都看的一些朋友们的中文Blog。嘿嘿，说是朋友，其中确实有一些是我很熟的好朋友的，另一些实际上都是大侠级人物的，假装我和他们都很熟好了:) 不过这些Blog和我的兴趣方向都很接近，所以颇有志同道合的感觉。</p>
<p>还是要按惯例礼貌的说一声，下面的排列是随机的顺序，无先后之分。还有一些我漏掉没列出来的，我还会再补充的。各网站的连接在我Blog首页的右侧。</p>
<p><strong>BLOG ON 27TH FLOOR</strong></p>
<p><a href="http://barb.51.net" target="_blank">BLOG ON 27TH FLOOR <a href="http://blog.cathayan.org" target="_blank">Mirror</a></p>
<p>主人Cathayan，工作生活在北京，对Open Sourse Software，如Debian Linux，Mozilla Firefox，以及和开源文化相关的一些东西都有着自己独到泼辣的见解。他也经常介绍引进Slashdot等开源社区的优秀文章。mozcn的发起维护者之一。</p>
<p><strong>FREEDOM &#8211; Rongjun Mu&#8217;s Blog</strong></p>
<p><a href="http://nic-nac-project.de/~murj/blog/" target="_blank">FREEDOM &#8211; Rongjun Mu&#8217;s Blog</a></p>
<p>主人Mu Rongjun，同样也是对开源很有研究。也是mozcn的发起维护者之一。</p>
<p><strong>iXuX.com&#8217;s Weblog</strong></p>
<p><a href="http://www1.ixux.com/nucleus/" target="_blank">iXuX.com&#8217;s Weblog</a></p>
<p>主人etan，我的大学好友，一位工作在北京的沈阳人，现在一日企没日没夜的被小日本残酷的剥削压迫着。这对略有“愤青”倾向的他来说，真是&#8230;他的Blog内容目前以愤青，台湾综艺，免费资源为主。:) </p>
<p><strong>Talent&#8217;s Blog</strong></p>
<p><a href="http://hut.512j.com/blog/" target="_blank">Talent&#8217;s Blog</a></p>
<p>主人Talent，我的大学学弟:P，即将大学毕业。我总是能通过他的Blog了解我刚刚毕业的母校有了什么新变化。</p>
<p><strong>车东 Che, Dong</strong></p>
<p><a href="http://www.chedong.com/" target="_blank">车东 Che, Dong</a></p>
<p>主人车东，是我比较敬佩的一位大侠，Linux，网站建设，搜索引擎等方面都很牛。我最欣赏的是他Blog的Slogan:</p>
<p><em>良好引用，良好结构，良好导航<br />
Well referended and well organized, with easy navigation</em></p>
<p><strong>kreny&#8217;s Blog</strong></p>
<p><a href="http://weblog.kreny.com/" target="_blank">kreny&#8217;s Blog</a></p>
<p>主人Kreny，是一位在日本留学的我的同龄人，他所学的专业是HR，不过作为兴趣，对计算机的研究也是颇有建树的。他的兴趣方向和我很像，PHP，Linux，搜索引擎，所以我看他写的内容很容易引起共鸣。</p>
<p><strong>Cathome01</strong></p>
<p><a href="http://www.cathome01.com/" target="_blank">cathome01</a></p>
<p>主人Cathome01，生活工作在日本，因为这个网站名称是“猫屋一号”，大家都尊称他为“猫叔”:)，他也确实很喜欢猫，经常可以看到他用手机拍的猫猫的图片（当然还有美女的图片:P ）。他的网站可以说把MT发挥到了一个极致，各种插件用的很精彩。他也是我们了解日本的一个窗口。</p>
<p><strong>Isaacmao</strong></p>
<p><a href="http://www.isaacmao.com/" target="_blank">Isaacmao</a> <a href="http://www.isaacmao.com/meta" target="_blank">meta</a> <a href="http://www.cnblog.org" target="_blank">cnblog</a></p>
<p>主人Issac Mao，cnblog.org的创始人之一。对Blog，社会化软件很有研究。关心Blog，就不能不看他的网站。在他的英文Blog Meta里面还可以看到一些越过Great Firewall的内容:)。来到澳洲后我买的第一本杂志就是包含有Xiao Qiang写的介绍他和中文Blog社区现状的那期New Scientist。</p>
<p><strong>搜索引擎研究::Blog of Search Engine</strong></p>
<p><a href="http://www.wespoke.com/" target="_blank">Blog of Search Engine</a></p>
<p>主人六翼的天使，对Blog和搜索引擎的研究都很专业，很有技术含量。</p>
<p><strong>竹笋炒肉：Hedong&#8217;s Blog</strong></p>
<p><a href="http://hedong.3322.org/newblog/" target="_blank">竹笋炒肉 Hedong&#8217;s Blog</a></p>
<p>主人Hilton，他是中文Blog的前辈之一了，而且是以技术Blog见长的，涵盖面很广，Linux，Java，Blog技术，开源软件&#8230;颇为让人敬佩。不过自从他的老Blog挂掉之后，再加上一些不是技术上的问题，现在更新的内容不是太多了。</p>
<p><strong>数字部落 Digiblog</strong></p>
<p><a href="http://xchina.linux.net.cn/" target="_blank">数字部落 Digiblog</a></p>
<p>说真话，我还真不知道主人是谁。以翻译Slashdot，CNet的文章为主，观点独到，很值得一看。</p>
<p><strong>微尘程序员网站</strong></p>
<p><a href="http://www.tinydust.net" target="_blank">微尘程序员网站</a></p>
<p>主人Tinyfool，Mop上的一位大侠。（说起来，Mop也是颇为卧虎藏龙的地方。）想做Programmer还是Coder？如果答案是前者，看他的Blog就没错啦。:)</p>
<p><strong>呼呼堂</strong></p>
<p><a href="http://www.small-island.org/blog/" target="_blank">呼呼堂</a></p>
<p>主人FatCatHu，风格独特，用敏锐的眼光来一句话概述编程前线的最新发展。这种干脆利落的风格可不仅仅是我一个人喜欢的。</p>
<p>(To be continued&#8230;)</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2005/02/19/my-favourite-blogs/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>寻找回来的世界</title>
		<link>http://douzi.org/wp/2005/01/02/%e5%af%bb%e6%89%be%e5%9b%9e%e6%9d%a5%e7%9a%84%e4%b8%96%e7%95%8c/</link>
		<comments>http://douzi.org/wp/2005/01/02/%e5%af%bb%e6%89%be%e5%9b%9e%e6%9d%a5%e7%9a%84%e4%b8%96%e7%95%8c/#comments</comments>
		<pubDate>Sun, 02 Jan 2005 04:56:04 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://localhost/~wfeng/wp/?p=63</guid>
		<description><![CDATA[恢复我2003-2004年Nucleus Blog中的内容。原Blog由于服务器被&#8221;严打&#8221;挂掉了，而换用了现在的这个新Blog。[Windix's Blog存档]
]]></description>
			<content:encoded><![CDATA[<p>恢复我2003-2004年Nucleus Blog中的内容。原Blog由于服务器被&#8221;严打&#8221;挂掉了，而换用了现在的这个新Blog。[<a href="http://www.douzi.org/blog/">Windix's Blog存档</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2005/01/02/%e5%af%bb%e6%89%be%e5%9b%9e%e6%9d%a5%e7%9a%84%e4%b8%96%e7%95%8c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>磨合偶的MT 3.0 (updated)</title>
		<link>http://douzi.org/wp/2004/09/16/%e7%a3%a8%e5%90%88%e5%81%b6%e7%9a%84mt-30-updated/</link>
		<comments>http://douzi.org/wp/2004/09/16/%e7%a3%a8%e5%90%88%e5%81%b6%e7%9a%84mt-30-updated/#comments</comments>
		<pubDate>Wed, 15 Sep 2004 14:00:01 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://localhost/~wfeng/wp/?p=45</guid>
		<description><![CDATA[虽然对PHP很熟，不过Perl我基本上是空白&#8230;但是偶不怕，偶有大骆驼、小骆驼 ^_^
可惜的是现在针对MT 3.0的中文资讯太少了，很多高手由于讨厌MT修改授权协议，纷纷转投他营，又有几个像我这样的&#8230;不过还好啦，这不就是一个学习的过程嘛！上次通过对PHP Nucleus CMS的磨合，PHP功力大进，希望这次也可以在Perl上有所突破。
更新记录：
2004-08-28 安装MT，Hack编辑区
2004-09-15 为Main Index模版增加分类列表显示
2004-09-16 通过屏蔽搜索引擎屏蔽Comment/Trackback SPAM

2004-08-28
从MovableType下载回来MT 3.01D的安装包后，在服务器(server: Redhat Linux AS 3)上安装遇到的第一个问题就是mt.cgi总是出现500错误 :( 可是我在我本地的Linux虚拟机(server: LFS Linux)上就一切正常&#8230; 难道有RPWT? 
刚刚好晚上在&#8221;PerlChina 文档集&#8221;上面看到了这篇&#8221;perl的编译安装&#8220;，里面原始的环境和我服务器上的一样，于是按照说明下载了新的5.85版的perl重新编译安装，Hoho，RPWT解决啦~~ ^_^
下面就开始磨合MT了。
首先Hack了一下编辑区，参考了Kreny的文章：
自己Hack了一下MT3.0的文字编辑区的功能按钮
当然我也尝试着做了一点小小的改进，以便更加符合W3C的标准。主要是修改两个标签，&#60;font color=&#8221;red&#8221;&#62;&#60;/font&#62;和&#60;s&#62;&#60;/s&#62;，它们都已经被列为了“反对使用(deprecated)”，分别替换为&#60;span style=&#8221;color:red&#8221;&#62;&#60;/span&#62;和&#60;del&#62;&#60;/del&#62;。
2004-09-15
首页Main Index模版默认居然没有分类列表显示，太不方便了。学习了一下Template的手册增加上了^_^ 这是我第一次编辑MT的模版，感觉功能确实很强大~
&#60;ul&#62;
&#60;MTCategories show_empty="1"&#62;
  &#60;li&#62;&#60;a href="&#60;$MTCategoryArchiveLink$&#62;"&#62;&#60;$MTCategoryLabel$&#62;&#160;(&#60;$MTCategoryCount$&#62;)&#60;/a&#62;&#60;/li&#62;
&#60;/MTCategories&#62;
&#60;/ul&#62;
2004-09-16
这招是从车东那学来的：利用robots.txt防止针对Movable Type的comments和backtrack ping SPAM
首先在网站的根目录放置一个robots.txt，内容如下：
User-agent: *
Disallow: /cgi-bin/mt/
那个Disallow后面的路径是MT的CGI安装的路径，这样凡是“有良知”的搜索引擎爬虫就不会抓它了。
然后是修改MT的模版，在&#8221;Comment Listing Template&#8221;和&#8221;TrackBack Listing Template&#8221;里面的HTML的&#60;head&#62;&#60;/head&#62;中都增加下面这句：
&#60;meta name="robots" content="noindex,nofollow"&#62;
效果呢，暂时还不知道呢，反正我这个是新站，还暂时没人SPAM我呢。不过SPAM的威力我可是领教过了，原来站点上曾经安装过refer，结果SPAM横行&#8230; @_@
]]></description>
			<content:encoded><![CDATA[<p>虽然对PHP很熟，不过Perl我基本上是空白&#8230;但是偶不怕，偶有大骆驼、小骆驼 ^_^<br />
可惜的是现在针对MT 3.0的中文资讯太少了，很多高手由于讨厌MT修改授权协议，纷纷转投他营，又有几个像我这样的&#8230;不过还好啦，这不就是一个学习的过程嘛！上次通过对PHP Nucleus CMS的磨合，PHP功力大进，希望这次也可以在Perl上有所突破。</p>
<p>更新记录：<br />
2004-08-28 安装MT，Hack编辑区<br />
2004-09-15 为Main Index模版增加分类列表显示<br />
2004-09-16 通过屏蔽搜索引擎屏蔽Comment/Trackback SPAM<br />
<span id="more-45"></span><br />
<strong>2004-08-28</strong></p>
<p>从MovableType下载回来MT 3.01D的安装包后，在服务器(server: Redhat Linux AS 3)上安装遇到的第一个问题就是mt.cgi总是出现500错误 :( 可是我在我本地的Linux虚拟机(server: LFS Linux)上就一切正常&#8230; 难道有RPWT? </p>
<p>刚刚好晚上在&#8221;PerlChina 文档集&#8221;上面看到了这篇&#8221;<a href="http://www.perlchina.org/perl/archives/2004/06/perl_aeaoee.html">perl的编译安装</a>&#8220;，里面原始的环境和我服务器上的一样，于是按照说明下载了新的5.85版的perl重新编译安装，Hoho，RPWT解决啦~~ ^_^</p>
<p>下面就开始磨合MT了。</p>
<p>首先Hack了一下编辑区，参考了Kreny的文章：<br />
<a href="http://weblog.dalouis.com/archives/2004/06/ehackaeaeaecece.html">自己Hack了一下MT3.0的文字编辑区的功能按钮</a></p>
<p>当然我也尝试着做了一点小小的改进，以便更加符合W3C的标准。主要是修改两个标签，&lt;font color=&#8221;red&#8221;&gt;&lt;/font&gt;和&lt;s&gt;&lt;/s&gt;，它们都已经被列为了“<a href="http://www.w3schools.com/html/html_reference.asp">反对使用(deprecated)</a>”，分别替换为&lt;span style=&#8221;color:red&#8221;&gt;&lt;/span&gt;和&lt;del&gt;&lt;/del&gt;。</p>
<p><strong>2004-09-15</strong></p>
<p>首页Main Index模版默认居然没有分类列表显示，太不方便了。学习了一下<a href="http://www.douzi.org/mt/docs/mtmanual_tags.html">Template的手册</a>增加上了^_^ 这是我第一次编辑MT的模版，感觉功能确实很强大~<br />
<code>&lt;ul&gt;<br />
&lt;MTCategories show_empty="1"&gt;<br />
  &lt;li&gt;&lt;a href="&lt;$MTCategoryArchiveLink$&gt;"&gt;&lt;$MTCategoryLabel$&gt;&nbsp;(&lt;$MTCategoryCount$&gt;)&lt;/a&gt;&lt;/li&gt;<br />
&lt;/MTCategories&gt;<br />
&lt;/ul&gt;</code></p>
<p><strong>2004-09-16</strong></p>
<p>这招是从<a href="http://www.chedong.com">车东</a>那学来的：<a href="http://weblog.chedong.com/archives/000525.html">利用robots.txt防止针对Movable Type的comments和backtrack ping SPAM</a></p>
<p>首先在网站的根目录放置一个robots.txt，内容如下：<br />
<code>User-agent: *<br />
Disallow: /cgi-bin/mt/</code><br />
那个Disallow后面的路径是MT的CGI安装的路径，这样凡是“有良知”的搜索引擎爬虫就不会抓它了。</p>
<p>然后是修改MT的模版，在&#8221;Comment Listing Template&#8221;和&#8221;TrackBack Listing Template&#8221;里面的HTML的&lt;head&gt;&lt;/head&gt;中都增加下面这句：<br />
<code>&lt;meta name="robots" content="noindex,nofollow"&gt;</code><br />
效果呢，暂时还不知道呢，反正我这个是新站，还暂时没人SPAM我呢。不过SPAM的威力我可是领教过了，原来站点上曾经安装过refer，结果SPAM横行&#8230; @_@</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2004/09/16/%e7%a3%a8%e5%90%88%e5%81%b6%e7%9a%84mt-30-updated/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>陆续恢复以前Blog的内容</title>
		<link>http://douzi.org/wp/2004/09/01/%e9%99%86%e7%bb%ad%e6%81%a2%e5%a4%8d%e4%bb%a5%e5%89%8dblog%e7%9a%84%e5%86%85%e5%ae%b9/</link>
		<comments>http://douzi.org/wp/2004/09/01/%e9%99%86%e7%bb%ad%e6%81%a2%e5%a4%8d%e4%bb%a5%e5%89%8dblog%e7%9a%84%e5%86%85%e5%ae%b9/#comments</comments>
		<pubDate>Tue, 31 Aug 2004 18:07:14 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://localhost/~wfeng/wp/?p=33</guid>
		<description><![CDATA[嘿嘿，google的网页快照是个好东西，我从那里找回来了很多原来Blog里的文章，贴过来了！偷偷的告诉你，把google快照地址的那个search换成linux就可以用了~~（这条经验是从Paulgao那里学来的）
折腾完Google，我准备陆续地再折腾一下Baidu, 天网, 以及国外的Web Archive :)
]]></description>
			<content:encoded><![CDATA[<p>嘿嘿，google的网页快照是个好东西，我从那里找回来了很多原来Blog里的文章，贴过来了！偷偷的告诉你，把google快照地址的那个search换成linux就可以用了~~（这条经验是从<a href="http://www.paulgao.com.cn">Paulgao</a>那里学来的）</p>
<p>折腾完Google，我准备陆续地再折腾一下Baidu, 天网, 以及国外的Web Archive :)</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2004/09/01/%e9%99%86%e7%bb%ad%e6%81%a2%e5%a4%8d%e4%bb%a5%e5%89%8dblog%e7%9a%84%e5%86%85%e5%ae%b9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windix&#8217;s Weblog Reloaded</title>
		<link>http://douzi.org/wp/2004/08/28/windixs-weblog-reloaded/</link>
		<comments>http://douzi.org/wp/2004/08/28/windixs-weblog-reloaded/#comments</comments>
		<pubDate>Fri, 27 Aug 2004 17:00:14 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://localhost/~wfeng/wp/?p=23</guid>
		<description><![CDATA[Windix&#8217;s Weblog重新开张了~ 可喜可贺，仍需磨合
如果没记错的话我的Blog已经写了整整一年了，一直使用的都是PHP的Nucleus CMS，可是就在最近的“网络严打”风潮中，我可怜的网站受到了牵连——它所在的虚拟主机服务器不幸中弹，正在公安机关的审查中&#8230;不过还好了，问题不大，通过和管理员的沟通，只要稍候数月，待审查完毕后就可以把原有的内容取回来了。:( 不过塞翁失马，焉知非福，正好朋友的主机开通，偶的blog又回来了 :)
重新开始自然也就多了种选择，PHP暂时放放，既然一直都挺想用MovableType的，正好借这次的机会尝试一下。本站的新朋友，老朋友，希望您能一如既往地支持我 ^_^
]]></description>
			<content:encoded><![CDATA[<p>Windix&#8217;s Weblog重新开张了~ 可喜可贺，仍需磨合</p>
<p>如果没记错的话我的Blog已经写了整整一年了，一直使用的都是PHP的Nucleus CMS，可是就在最近的“网络严打”风潮中，我可怜的网站受到了牵连——它所在的虚拟主机服务器不幸中弹，正在公安机关的审查中&#8230;不过还好了，问题不大，通过和管理员的沟通，只要稍候数月，待审查完毕后就可以把原有的内容取回来了。:( 不过塞翁失马，焉知非福，正好朋友的主机开通，偶的blog又回来了 :)</p>
<p>重新开始自然也就多了种选择，PHP暂时放放，既然一直都挺想用MovableType的，正好借这次的机会尝试一下。本站的新朋友，老朋友，希望您能一如既往地支持我 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2004/08/28/windixs-weblog-reloaded/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>再议Trackback编码</title>
		<link>http://douzi.org/wp/2004/06/06/%e5%86%8d%e8%ae%aetrackback%e7%bc%96%e7%a0%81/</link>
		<comments>http://douzi.org/wp/2004/06/06/%e5%86%8d%e8%ae%aetrackback%e7%bc%96%e7%a0%81/#comments</comments>
		<pubDate>Sat, 05 Jun 2004 16:00:28 +0000</pubDate>
		<dc:creator>windix</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://moon.local/~wfeng/wp/?p=125</guid>
		<description><![CDATA[首先感谢is (From scanner&#8217;s comment) 提出的宝贵意见:
赞一个先。
PHP Smarty现在好像频频露脸阿，有空一定好好研习一下。
TrackBack编码的问题，困难不在于编码转换，转换速度我觉得也没有太计较，毕竟Blog豆腐块撑死了也就一二十K, 不会很大的。我倒是觉得如何自动识别TrackBack target blog的编码类型，选择正确的编码方式。具体方法我也没有想好，一种是提供附加的PermaLink URL, 获得Blog编码方式，或者通过测试性的call TrackBack URL,来获得编码方式，觉得这个功能更有用了。
经他的这么一提醒，我才想起来原来Trackback是双向的，所以不但我发布Trackback Ping要提供转码，而且接受Trackback也要提供不同的Trackback URL以接受不同的编码Ping。很重要：）
MT的Trackback规范当时没有考虑到编码问题，这真是一个缺憾呀。目前我所知的弥补过程，一个是上面所说手工的选取编码；另一个就是is所期待的“自动识别”，确实可以做到，方法是：不提供Trackback地址，提供要Ping的Blog的PermanentLink地址，如果这个Blog符合Trackback规范的话，就应该能从这个页面AutoDiscovery得到Trackback地址：
&#60;rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"&#62;
&#60;rdf:Description
rdf:about="http://www.foo.com/archive.html#foo"
dc:identifier="http://www.foo.com/archive.html#foo"
dc:title="Foo Bar"
trackback:ping="http://www.foo.com/tb.cgi/5" /&#62;
&#60;/rdf:RDF&#62;
判断一个页面的编码就要容易得多了（只通过Trackback地址没法判断编码&#8230;），复杂点来说有算法，印象中有一个开源C++的库，记不得名字了，专门用于编码识别，Mozilla就是使用这个库来判断页面编码的。简单的吗，可以通过简单的找规律的方式判断，虽然准确率另当别论，但应该不难。
这个方法的最大问题，很多Blog都没有按照Trackback规范要求的把那个AutoDiscovery放上（这主要要怪做Skin的人，包括我:P ），这样也就无济于事了。
如此看来，除非是Trackback更改规范，不然的话还就得靠手工选了&#8230; :(
]]></description>
			<content:encoded><![CDATA[<p>首先感谢is (From scanner&#8217;s comment) 提出的宝贵意见:</p>
<blockquote><p>赞一个先。<br />
PHP Smarty现在好像频频露脸阿，有空一定好好研习一下。<br />
TrackBack编码的问题，困难不在于编码转换，转换速度我觉得也没有太计较，毕竟Blog豆腐块撑死了也就一二十K, 不会很大的。我倒是觉得如何自动识别TrackBack target blog的编码类型，选择正确的编码方式。具体方法我也没有想好，一种是提供附加的PermaLink URL, 获得Blog编码方式，或者通过测试性的call TrackBack URL,来获得编码方式，觉得这个功能更有用了。</p></blockquote>
<p>经他的这么一提醒，我才想起来原来Trackback是双向的，所以不但我发布Trackback Ping要提供转码，而且接受Trackback也要提供不同的Trackback URL以接受不同的编码Ping。很重要：）</p>
<p>MT的Trackback规范当时没有考虑到编码问题，这真是一个缺憾呀。目前我所知的弥补过程，一个是上面所说手工的选取编码；另一个就是is所期待的“自动识别”，确实可以做到，方法是：不提供Trackback地址，提供要Ping的Blog的PermanentLink地址，如果这个Blog符合Trackback规范的话，就应该能从这个页面AutoDiscovery得到Trackback地址：</p>
<pre><code>&lt;rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"&gt;
&lt;rdf:Description
rdf:about="http://www.foo.com/archive.html#foo"
dc:identifier="http://www.foo.com/archive.html#foo"
dc:title="Foo Bar"
trackback:ping="http://www.foo.com/tb.cgi/5" /&gt;
&lt;/rdf:RDF&gt;</code></pre>
<p>判断一个页面的编码就要容易得多了（只通过Trackback地址没法判断编码&#8230;），复杂点来说有算法，印象中有一个开源C++的库，记不得名字了，专门用于编码识别，Mozilla就是使用这个库来判断页面编码的。简单的吗，可以通过简单的找规律的方式判断，虽然准确率另当别论，但应该不难。</p>
<p>这个方法的最大问题，很多Blog都没有按照Trackback规范要求的把那个AutoDiscovery放上（这主要要怪做Skin的人，包括我:P ），这样也就无济于事了。</p>
<p>如此看来，除非是Trackback更改规范，不然的话还就得靠手工选了&#8230; :(</p>
]]></content:encoded>
			<wfw:commentRss>http://douzi.org/wp/2004/06/06/%e5%86%8d%e8%ae%aetrackback%e7%bc%96%e7%a0%81/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
