<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>DBA notes</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/" />
    <link rel="self" type="application/atom+xml" href="http://www.dbanotes.net/atom.xml" />
   <id>tag:www.dbanotes.net,2008://1</id>
    <link rel="service.post" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1" title="DBA notes" />
    <updated>2008-04-12T07:03:20Z</updated>
    <subtitle>SELECT blog FROM Fenng.Thought 
 WHERE subjects IN (&apos;ORACLE&apos;, &apos;Web Arch&apos;, &apos;UNIX&apos;, &apos;Web 2.0&apos;, &apos;OPENSOURCE&apos;) ; 

     
        Weblog
                 Wiki
LinkLog
                 OpenRSS
Search
                                  Articles
                 About
               </subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.2rc2-en</generator>
 

<entry>
    <title>Movable Type 的性能问题</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/movable_type_performance.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1396" title="Movable Type 的性能问题" />
    <id>tag:www.dbanotes.net,2008://1.1396</id>
    
    <published>2008-04-11T14:41:51Z</published>
    <updated>2008-04-12T07:03:20Z</updated>
    
    <summary>我算得上是 Movable Type 的忠实用户。这两年来，WordPress 快成为 独立 Blog 的标准配置了，MT 可以说每况愈下。自从升级到 MT4  之后，明显感觉 Blog 性能糟糕了很多，每一次发文章都要与 HTTP 500 错误战斗半天才能成功，读者留言也非常费劲，有段时间非常灰心丧气，都不想继续写下去了。如果说 MT 3 之前是与 SPAM 战斗，到了 MT 4 就完全是折腾性能问题了。虽然 MT 4 之后的每次小版本发布都宣称性能上有很大改进，实际表现总是欠佳。

一些常规的 MT 优化技巧 其实作用都不大，我还把 MT 用的数据库索引分析了一遍，删掉了好几个价值不大的索引，虽然不是无用功，但也解决不了问题，因为瓶颈根本不在 DB 这里。大多数 Movable Type 用户的应用场景是在 Dreamhost 上，在这个环境里要想找到应用的瓶颈还真的是个技术活。缺乏 Profiling 工具不说，如果调用某个命令消耗了资源稍微过份一点，立刻被系统 Kill 掉。

其实 MT 的设计思想还是很不错的，大部分页面都 Build 成静态页面，减少对数据库的压力。一般来说，这比 WordPress 频繁调用数据库的方式(当然 WP 是可以起用 Cache 的)，应该在性能上有更好的表现才是。问题是 Dreamhost 对每个用户提供的硬件资源其实是很差的，尤其是磁盘 I/O 。我的所有页面加起来也不过几千个，如果只是访问静态页面或是数据库其实问题都不大的，麻烦出现在构建页面或者是遇到留言行为的时候，MT 会调用若干个磁盘上的模版文件，加上 Perl 本身的系统开销，消耗的资源就到了 Dreamhost 的极限，然后进程就被无情的 Kill 掉了。估计是用户群抱怨太多，从 MTOS 4.1.1 版本开始总算有了一个性能框架 专门用以分析性能问题(并且号召用户提供性能数据以便协助解决性能问题)。启用了一段时间后，收集到的 Log 响应时间典型是这样的：

MT::Template::build[Comment Response]=0.60070MT::App::Comments::run=28.24320Total=28.85665

或许在 I/O 不错的系统上，表现会好吧。Dreamhost 上文件都是放置在 NFS 上的，而且众多用户共用一个系统，只能将就一下。

今天看到 4.15 的改进中，已经可以 Cache Template Module 了。甘愿作小白鼠，升级。盼望这次能有效解决特定应用场景的性能问题。不过开启了性能 Log 看了半天，效果并非很显著， 

后记：

经验证的有效办法之一
通过Cache提升MT基于Tag搜索的速度，只在第一次构建需要的 Tag 时候会占用平时一样的系统资源。再次搜索时，开销大大降低。&quot;抱怨的同时要有解决办法&quot;  

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>我算得上是 Movable Type 的忠实用户。这两年来，WordPress 快成为 独立 Blog 的标准配置了，MT 可以说每况愈下。自从<a href="http://www.dbanotes.net/sitelog/mt4_migration_i.html">升级到 MT4</a>  之后，明显感觉 Blog 性能糟糕了很多，每一次发文章都要与 HTTP 500 错误战斗半天才能成功，读者留言也非常费劲，有段时间非常灰心丧气，都不想继续写下去了。如果说 MT 3 之前是与 SPAM 战斗，到了 MT 4 就完全是折腾性能问题了。虽然 MT 4 之后的每次小版本发布都宣称性能上有很大改进，实际表现总是欠佳。</p>

<p>一些常规的 <a href="http://lifewiki.net/sixapart/MTPerformanceTuning">MT 优化技巧</a> 其实作用都不大，我还把 MT 用的数据库索引分析了一遍，删掉了好几个价值不大的索引，虽然不是无用功，但也解决不了问题，因为瓶颈根本不在 DB 这里。大多数 Movable Type 用户的应用场景是在 Dreamhost 上，在这个环境里要想找到应用的瓶颈还真的是个技术活。缺乏 Profiling 工具不说，如果调用某个命令消耗了资源稍微过份一点，立刻被系统 Kill 掉。</p>

<p>其实 MT 的设计思想还是很不错的，大部分页面都 Build 成静态页面，减少对数据库的压力。一般来说，这比 WordPress 频繁调用数据库的方式(当然 WP 是可以起用 Cache 的)，应该在性能上有更好的表现才是。问题是 Dreamhost 对每个用户提供的硬件资源其实是很差的，尤其是磁盘 I/O 。我的所有页面加起来也不过几千个，如果只是访问静态页面或是数据库其实问题都不大的，麻烦出现在构建页面或者是遇到留言行为的时候，MT 会调用若干个磁盘上的模版文件，加上 Perl 本身的系统开销，消耗的资源就到了 Dreamhost 的极限，然后进程就被无情的 Kill 掉了。估计是用户群抱怨太多，从 MTOS 4.1.1 版本开始总算有了一个<a href="http://www.movabletype.org/documentation/mt415/performance-logging.html">性能框架</a> 专门用以分析性能问题(并且<a href="http://www.movabletype.org/2008/02/making_your_site_bullet_proof.html">号召用户</a>提供性能数据以便协助解决性能问题)。启用了一段时间后，收集到的 Log 响应时间典型是这样的：</p>

<pre>MT::Template::build[Comment Response]=0.60070<br />MT::App::Comments::run=28.24320<br />Total=28.85665</pre>

<p>或许在 I/O 不错的系统上，表现会好吧。Dreamhost 上文件都是放置在 NFS 上的，而且众多用户共用一个系统，只能将就一下。</p>

<p>今天看到 4.15 的改进中，已经可以 <a href="http://www.movabletype.org/documentation/mt415/module-caching.html">Cache Template Module</a> 了。甘愿作小白鼠，升级。盼望这次能有效解决特定应用场景的性能问题。不过开启了性能 Log 看了半天，效果并非很显著，</p> 

<p>后记：</p>

<h4>经验证的有效办法之一</h4>
<p><a href="http://www.anysql.net/weblog/tag_search_cache.html">通过Cache提升MT基于Tag搜索的速度</a>，只在第一次构建需要的 Tag 时候会占用平时一样的系统资源。再次搜索时，开销大大降低。"抱怨的同时要有解决办法" </p> 

<p>--EOF--<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>DBA notes 准备迁移到 (mt)</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/dbanotes_migrating_to_media_temple.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1325" title="DBA notes 准备迁移到 (mt)" />
    <id>tag:www.dbanotes.net,2008://1.1325</id>
    
    <published>2008-01-05T08:50:17Z</published>
    <updated>2008-01-05T09:14:29Z</updated>
    
    <summary>估计有些访问我的 Blog 的朋友已经被本站留言时的糟糕表现烦透了。其实我何尝不烦? 每当发贴子的时候，总要忍受一堆 HTTP 500 错误后才能成功，要多不爽有多不爽。趁着 (mt) 这段时间搞活动，买了一年 Grid Service (lite)。期待迁移完毕后 Blog 稳定性表现能好点。

有朋友帮我买了一台 1U 的服务器，国内有什么好一点的托管商麽? 最好不要被随时拔网线的，拔网线倒也问题不大，最好不要把机器抬走就成。

其实这么折腾来折腾去的，只是希望能有个稳定一点的写字儿空间罢了.

另外，今天也把域名转移的相关资料准备了一下，打算把这个域名也迁移到国外的域名服务商那里。不为别的，在国内一直不太放心罢了，虽然我的 Blog 没啥犯忌讳的内容。原来域名是通过代理缴费的，在这方面我是菜鸟，被鄙视的不轻，不过他们的服务态度还是很好的。

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>估计有些访问我的 Blog 的朋友已经被本站留言时的糟糕表现烦透了。其实我何尝不烦? 每当发贴子的时候，总要忍受一堆 HTTP 500 错误后才能成功，要多不爽有多不爽。趁着<a href="http://www.mediatemple.net/"> (mt) </a>这段时间搞活动，买了一年 Grid Service (lite)。期待迁移完毕后 Blog 稳定性表现能好点。</p>

<p>有朋友帮我买了一台 1U 的服务器，国内有什么好一点的托管商麽? 最好不要被随时拔网线的，拔网线倒也问题不大，最好不要把机器抬走就成。</p>

<p>其实这么折腾来折腾去的，只是<strong>希望能有个稳定一点的写字儿空间</strong>罢了.</p>

<p>另外，今天也把域名转移的相关资料准备了一下，打算把这个域名也迁移到国外的域名服务商那里。不为别的，在国内一直不太放心罢了，虽然我的 Blog 没啥犯忌讳的内容。原来域名是通过代理缴费的，在这方面我是菜鸟，被鄙视的不轻，不过他们的服务态度还是很好的。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>07 年 DBA notes 在抓虾上被推荐最多的文章</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/07_top_articles_recommended.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1315" title="07 年 DBA notes 在抓虾上被推荐最多的文章" />
    <id>tag:www.dbanotes.net,2007://1.1315</id>
    
    <published>2007-12-25T16:57:22Z</published>
    <updated>2007-12-28T06:33:42Z</updated>
    
    <summary>看到这篇 2007 抓虾最热 50 篇文章分析，甚感惭愧。没一篇是自己写的。翻了一下抓虾上被推荐的文章列表，看看这一年抓虾用户给了 DBAnotes.net 多大的关注程度。

重新安装系统后的几件事情 &gt;&gt; 推荐数：70本想写给自己备忘的一篇文章反而收到了最多的关注程度(不过即使最多也没超过 100 个推荐)。始料未及。或许是越简单的东西反而越普适.

网站架构分析篇
WikiPedia 技术架构学习分享 &gt;&gt; 推荐数：51架构类文章被推荐最多的一篇，之所以受到了更多关注怕还是沾了 WikiPedia 名头的光。

YouTube 的架构扩展 &gt;&gt; 推荐数：43Google 收购 YouTube 后，迫不及待的把 YouTube 纳入自己体系架构中。YouTube 也是大树底下好乘凉。

财帮子（caibangzi.com）网站架构 &gt;&gt; 推荐数：27采访了财帮子的 Meng Yan 后整理的资料。07 年财经类站点很火。08 年相信他们会更有机会。这也是唯一一篇爆料国内网站架构的文章。

WordPress 对 Gravatar 进行的优化 &gt;&gt; 推荐数：22WordPress 收购 Gravatar 后，干了啥好事？

Yahoo！社区架构 &gt;&gt; 推荐数：30关于雅虎技术背景的爆料。

Twitter 架构扩展：100 倍性能提升 &gt;&gt; 推荐数：30 Twitter 是 2007 年我用的比较多的服务了。这个站点现在还需要不停的扩展

Internet Archive 的海量存储浅析 &gt;&gt; 推荐数： 13从写这篇分析开始，我有了写更多系统架构分析文章的念头。

技术备忘篇
Unix 速成小法 &gt;&gt; 推荐数：35这篇和另一篇 GNU 核心工具 遥相呼应。算是我对 Unix 使用中的一点感悟。

Bash Shell 快捷键的学习使用 &gt;&gt; 推荐数：33Shell 学习笔记，备忘。俗语说，好记性不如烂笔头，诚然。

GNU 核心工具 &gt;&gt; 推荐数：18关于GNU Core Utilities 的小小介绍。

从 MySQL 迁移到 Oracle (傻瓜篇) &gt;&gt; 推荐数：16从 Oracle 迁移到 MySQL 的文章很多，从 MySQL 迁移到 Oracle 的文章则很少。本文算是抛砖引玉。

探讨篇
Web 2.0 站点扩展性问题随感 &gt;&gt; 推荐数：27Web 2.0 站点扩展性问题越来越突出，已经成为制约 Web 2.0 发展的一个障碍. 一点想法以及探讨。

Windows 上最好用的 GTD 工具是哪一个? &gt;&gt; 推荐数：21GTD 工具林林总总，可最好用的是哪一个？怕是没有最好，只有哪个合适而已。

扯淡篇
G FW 三定律 &gt;&gt; 推荐数：22这篇文章被关注绝对不是因为写的好，而是因为痛恨 GF W 的人太多了。

诡异篇
推荐本站在 del.icio.us 收藏最多的文章 &gt;&gt; 推荐数：28

一点题外话：
1）抓虾数据仍有潜力可挖掘。像我的最被关注的帖子，如果能给自动做个分析该有多好? 

2)  del.icio.us 和 抓虾用户兴趣点多有重合之处。但普及类的文章在抓虾上怕是更受关注。

3)  被推荐多或者被收藏多的文章不一定得到比较多的评论

不早了，改天想起来再写

--EOF


</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>看到这篇 <a href="http://www.zhuaxia.com/item/636892828">2007 抓虾最热 50 篇文章分析</a>，甚感惭愧。没一篇是自己写的。翻了一下抓虾上被推荐的文章列表，看看这一年抓虾用户给了 DBAnotes.net 多大的关注程度。</p>

<p><a href="http://www.dbanotes.net/techmemo/reinstall_xp_memo.html"><strong>重新安装系统后的几件事情</strong></a> >> 推荐数：70<br />本想写给自己备忘的一篇文章反而收到了最多的关注程度(不过即使最多也没超过 100 个推荐)。始料未及。或许是越简单的东西反而越普适.</p>

<h4>网站架构分析篇</h4>
<p><a href="http://www.dbanotes.net/opensource/wikipedia_arch.html"><strong>WikiPedia 技术架构学习分享</strong></a> >> 推荐数：51<br />架构类文章被推荐最多的一篇，之所以受到了更多关注怕还是沾了 WikiPedia 名头的光。</p>

<p><a href="http://www.dbanotes.net/opensource/youtube_web_arch.html"><strong>YouTube 的架构扩展</strong></a> >> 推荐数：43<br />Google 收购 YouTube 后，迫不及待的把 YouTube 纳入自己体系架构中。YouTube 也是大树底下好乘凉。</p>

<p><a href="http://www.dbanotes.net/review/caibangzi_web_arch.html"><strong>财帮子（caibangzi.com）网站架构</strong></a> >> 推荐数：27<br />采访了财帮子的 Meng Yan 后整理的资料。07 年财经类站点很火。08 年相信他们会更有机会。这也是唯一一篇爆料国内网站架构的文章。</p>

<p><a href="http://www.dbanotes.net/review/wordpress_gravatar_arch.html"><strong>WordPress 对 Gravatar 进行的优化</strong></a> >> 推荐数：22<br />WordPress 收购 Gravatar 后，干了啥好事？</p>

<p><a href="http://www.dbanotes.net/review/yahoo_shortcuts.html"><strong>Yahoo！社区架构</strong></a> >> 推荐数：30<br />关于雅虎技术背景的爆料。</p>

<p><a href="http://www.dbanotes.net/opensource/twitter_arch.html"><strong>Twitter 架构扩展：100 倍性能提升</strong></a> >> 推荐数：30 <br />Twitter 是 2007 年我用的比较多的服务了。这个站点现在还需要不停的扩展</p>

<p><a href="http://www.dbanotes.net/database/internet_archive_storage.html"><strong>Internet Archive 的海量存储浅析</strong></a> >> 推荐数： 13<br />从写这篇分析开始，我有了写更多系统架构分析文章的念头。</p>

<h4>技术备忘篇</h4>
<p><a href="http://www.dbanotes.net/geek/unix_quick_path.html"><strong>Unix 速成小法</strong></a> >> 推荐数：35<br />这篇和另一篇 <a href="http://www.dbanotes.net/opensource/gnu_core_utilities.html">GNU 核心工具</a> 遥相呼应。算是我对 Unix 使用中的一点感悟。</p>

<p><a href="http://www.dbanotes.net/techmemo/shell_shortcut.html"<strong>Bash Shell 快捷键的学习使用</strong></a> >> 推荐数：33<br />Shell 学习笔记，备忘。俗语说，好记性不如烂笔头，诚然。</p>

<p><a href="http://www.dbanotes.net/opensource/gnu_core_utilities.html"><strong>GNU 核心工具</strong></a> >> 推荐数：18<br />关于GNU Core Utilities 的小小介绍。</p>

<p><a href="http://www.dbanotes.net/database/mysql_migrate_to_oracle.html"><strong>从 MySQL 迁移到 Oracle (傻瓜篇)</strong></a> >> 推荐数：16<br />从 Oracle 迁移到 MySQL 的文章很多，从 MySQL 迁移到 Oracle 的文章则很少。本文算是抛砖引玉。</p>

<h4>探讨篇</h4>
<p><a href="http://www.dbanotes.net/review/web_20_scalibility.html"><strong>Web 2.0 站点扩展性问题随感</strong></a> >> 推荐数：27<br />Web 2.0 站点扩展性问题越来越突出，已经成为制约 Web 2.0 发展的一个障碍. 一点想法以及探讨。</p>

<p><a href="http://www.dbanotes.net/geek/best_gtd_tools_for_windows.html"><strong>Windows 上最好用的 GTD 工具是哪一个?</strong></a> >> 推荐数：21<br />GTD 工具林林总总，可最好用的是哪一个？怕是没有最好，只有哪个合适而已。</p>

<h4>扯淡篇</h4>
<p><a href="http://www.dbanotes.net/review/gfw_rule.html"><strong>G FW 三定律</strong></a> >> 推荐数：22<br />这篇文章被关注绝对不是因为写的好，而是因为痛恨 GF W 的人太多了。</p>

<h4>诡异篇</h4>
<p><a href="http://www.dbanotes.net/review/dbanotes_delicious_top_articles.html"><strong>推荐本站在 del.icio.us 收藏最多的文章</strong></a> >> 推荐数：28</p>

<p>一点题外话：<br />
1）抓虾数据仍有潜力可挖掘。像我的最被关注的帖子，如果能给自动做个分析该有多好? 
<br />
2)  del.icio.us 和 抓虾用户兴趣点多有重合之处。但普及类的文章在抓虾上怕是更受关注。
<br />
3)  被推荐多或者被收藏多的文章不一定得到比较多的评论</p>

<p>不早了，改天想起来再写</p>

<p>--EOF</p>

<p><br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>一些来访者查询的诡异内容</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/some_amusing_search_keywords.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1253" title="一些来访者查询的诡异内容" />
    <id>tag:www.dbanotes.net,2007://1.1253</id>
    
    <published>2007-10-26T11:01:24Z</published>
    <updated>2007-10-26T11:26:00Z</updated>
    
    <summary>因为用 Google Reader 订阅了本站后台的 Activity Log，有的时候观察到一些奇怪的查询内容。比如，这几天频繁出现的查询是：黄垂玲。搜索我的 Blog 应该不会出现这个内容吧? 我也是查询 Google 后才知道怎么回事。友情提示，建议这位着急的朋友去电驴上或者用迅雷搜索一下，就别在我这里折腾了。

仔细看看这些系统后台日志，发现还有的人反复的查询 ”Arch and 1=1“或者相近的内容。准是 &quot;SQL 注入攻击&quot; 的安全扫盲文章看多了，我这个破站有啥内容值得注射的? Dreamhost 三天两头宕机，安全性差的狠。友情提醒： 您的IP已经被我记录，歇会儿！别累着。

更为诡异的一个查询是”lesbian“，我彻底晕了。如果是中国人，建议安装个金山词霸，如果是外国人，我建议你还是去 Google 查询: define:lesbian , 或者 Flickr 查询图片吧！

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[</p>因为用 Google Reader 订阅了本站后台的 Activity Log，有的时候观察到一些奇怪的查询内容。比如，这几天频繁出现的查询是：黄垂玲。搜索我的 Blog 应该不会出现这个内容吧? 我也是查询 Google 后才知道怎么回事。友情提示，建议这位着急的朋友去电驴上或者用迅雷搜索一下，就别在我这里折腾了。</p>

<p>仔细看看这些系统后台日志，发现还有的人反复的查询 ”Arch and 1=1“或者相近的内容。准是 "SQL 注入攻击" 的安全扫盲文章看多了，我这个破站有啥内容值得注射的? Dreamhost 三天两头宕机，安全性差的狠。友情提醒： 您的IP已经被我记录，歇会儿！别累着。</p>

<p>更为诡异的一个查询是”lesbian“，我彻底晕了。如果是中国人，建议安装个金山词霸，如果是外国人，我建议你还是去 Google 查询: define:lesbian , 或者 Flickr 查询图片吧！</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>MT4 反复提示升级的问题解决办法经过实践验证</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/resolved_mt_4_recurring_upgrade_bug.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1235" title="MT4 反复提示升级的问题解决办法经过实践验证" />
    <id>tag:www.dbanotes.net,2007://1.1235</id>
    
    <published>2007-09-21T11:45:57Z</published>
    <updated>2007-09-21T12:06:02Z</updated>
    
    <summary>前几天我提到过 MT 4 反复提示升级的 Bug，并且提出了临时解决办法，当时我也不确定该办法是否管用。

昨天登录 Blog 的时候，又提示我升级，差点晕倒（乖乖龙的东，莫非我的戏法不灵?)。这回我学了乖，观察一下数据库中的值，发现 MT_CONFIG 中的config_data字段的值&quot;丢失&quot;了如下内容：

SchemaVersion 4.0026

手工更新了该值内容，把  &quot;SchemaVersion 4.0026&quot; 加进去，回到登录页面，刷新，已经不提示更新了。

经过这次修改，可以负责任的告诉 MT 4 用户：可以用我的土办法来暂时避免该问题了。当然这个直接修改数据库的办法是不被 MT 开发人员推荐的，可是不这么做现在有什么更好的办法麽?

MT 4 是一个让人又爱又恨的版本.

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>前几天我提到过 <a href="http://www.dbanotes.net/sitelog/mt_4_bug_recurring_prompt_time_to_upgrade.html">MT 4 反复提示升级的 Bug</a>，并且提出了临时解决办法，当时我也不确定该办法是否管用。</p>

<p>昨天登录 Blog 的时候，又提示我升级，差点晕倒（乖乖龙的东，莫非我的戏法不灵?)。这回我学了乖，观察一下数据库中的值，发现 MT_CONFIG 中的config_data字段的值"丢失"了如下内容：</p>

<pre>SchemaVersion 4.0026</pre>

<p>手工更新了该值内容，把  "SchemaVersion 4.0026" 加进去，回到登录页面，刷新，已经不提示更新了。</p>

<p>经过这次修改，可以<strong>负责任的告诉 MT 4 用户：可以用我的土办法来暂时避免该问题了</strong>。当然这个直接修改数据库的办法是不被 MT 开发人员推荐的，可是不这么做现在有什么更好的办法麽?</p>

<p>MT 4 是一个让人又爱又恨的版本.</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>MT 4 最烦人的BUG: 反复提示升级</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/mt_4_bug_recurring_prompt_time_to_upgrade.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1220" title="MT 4 最烦人的BUG: 反复提示升级" />
    <id>tag:www.dbanotes.net,2007://1.1220</id>
    
    <published>2007-09-08T07:16:02Z</published>
    <updated>2007-09-08T07:45:52Z</updated>
    
    <summary>我前面的文章一直夸 MT 4 的一些优点，今天实在忍不住了，说说 MT 4 这个恼人的 Bug。

从 MT 3.3x 升级到 MT 4 之后，经常在登录的时候会提示：

Time to Upgrade!

而且，这个提示还是没办法跳过去的，只得选择 Upgrade，Upgrade 之后，很多配置和模版的内容又变成默认的，还要重新设定。可没几天，又会提示升级。烦死。

在 MT 邮件列表里发了这个消息（可怜我的蹩脚英语啊)，发现很多人都遇到了类似的情况。但是 Byrne Reese 似乎一时也找不到好的办法，许诺谁能协助解决将有奖励： &quot; A $50 Amazon Gift Certificate/Bounty has been declared for anyone who can help us track down the root cause of this&quot;。此外，MT 4.01 Beta 版的问题列表也说这个问题还没有解决。

经过观察，发现每次都是提示数据库 Schema 版本从 MT 3.2 升级到 4.0026。邮件列表里有个人的提示很有帮助： 

The upgrade check is in MT/App/CMS.pm, sub init_request.  It occurs when the schema version stored in the database ($app-&gt;config(&apos;SchemaVersion&apos;)) schema_version). 

数据库里面 Schema Version 存储在 MT_CONFIG 表里，检查这个表的记录(共有20多条)，发现第一条(config_id) 的config_data字段的值为：

SchemaVersion 4.0026SQLSetNames 0

而其他行的值是 ：

SQLSetNames 0

也就是说其他行是不包含 SchemaVersion 的值。猜测升级程序在这里取值取错了(这个表的设计也够糟糕的了)，立刻找一个全新的 MT 4 安装，发现这个表是只有一行记录的。决定删掉多余的记录。目前没有发现错误。

是否彻底避免了这个问题，还有待观察。如果你等不及的话，可以看看 MT_CONFIG 表的数据是否也是类似我这样的。

--EOF--

</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>我前面的文章一直夸 MT 4 的一些优点，今天实在忍不住了，说说 MT 4 这个恼人的 Bug。</p>

<p>从 MT 3.3x 升级到 MT 4 之后，经常在登录的时候会提示：</p>

<pre>Time to Upgrade!</pre>

<p>而且，这个提示还是没办法跳过去的，只得选择 Upgrade，Upgrade 之后，很多配置和模版的内容又变成默认的，还要重新设定。可没几天，又会提示升级。烦死。</p>

<p>在 MT 邮件列表里发了这个消息（可怜我的蹩脚英语啊)，发现很多人都遇到了类似的情况。但是 Byrne Reese 似乎一时也找不到好的办法，许诺谁能协助解决将有奖励： " A $50 Amazon Gift Certificate/Bounty has been declared for anyone who can help us track down the root cause of this"。此外，<a href="http://www.movabletype.org/beta/">MT 4.01 Beta 版</a>的问题列表也说这个问题还没有解决。</p>

<p>经过观察，发现每次都是提示数据库 Schema 版本从 MT 3.2 升级到 4.0026。邮件列表里有个人的提示很有帮助： </p>

<pre>The upgrade check is in MT/App/CMS.pm, sub init_request.  It occurs when the schema version stored in the database ($app->config('SchemaVersion')) < the schema version stored in the application code ($app->schema_version). </pre>

<p>数据库里面 Schema Version 存储在 MT_CONFIG 表里，检查这个表的记录(共有20多条)，发现第一条(config_id) 的config_data字段的值为：</p>

<pre>SchemaVersion <strong>4.0026</strong><br />SQLSetNames 0</pre>

<p>而其他行的值是 ：</p>

<pre>SQLSetNames 0</pre>

<p>也就是说其他行是不包含 SchemaVersion 的值。猜测升级程序在这里取值取错了(这个表的设计也够糟糕的了)，立刻找一个全新的 MT 4 安装，发现这个表是只有一行记录的。决定删掉多余的记录。目前没有发现错误。</p>

<p>是否彻底避免了这个问题，还有待观察。如果你等不及的话，可以看看 MT_CONFIG 表的数据是否也是类似我这样的。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>FeedBurner 好像解封了?</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/feedburner_uncord.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1215" title="FeedBurner 好像解封了?" />
    <id>tag:www.dbanotes.net,2007://1.1215</id>
    
    <published>2007-09-04T13:21:30Z</published>
    <updated>2007-09-04T13:33:17Z</updated>
    
    <summary>突然发现我的 FeedBurner 地址 可以访问了，难道阻尼了这么几天就放出来了? 

FeedSky 用起来也很好，我的 Feed 还上了 &quot;精彩Feed&quot; 推荐(单独推荐地址)。谢谢吕欣欣同学！

忙了一天，才空下来，刚才检查了一下Blog 访问 Log，发现以前 Dreamhost 漏洞的时候产生的垃圾文件没有删掉，晕死。我说从什么地方跑来的奇怪访问呢。

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>突然发现<a href="http://feeds.feedburner.com/dbanotes">我的 FeedBurner 地址</a> 可以访问了，难道阻尼了这么几天就放出来了? </p>

<p><a href="http://www.feedsky.com/">FeedSky</a> 用起来也很好，我的 Feed 还上了 "精彩Feed" 推荐(单独推荐<a href="http://www.feedsky.com/feeds/recommend/bf_070903.html">地址</a>)。谢谢吕欣欣同学！</p>

<p>忙了一天，才空下来，刚才检查了一下Blog 访问 Log，发现以前 <a href="http://www.dbanotes.net/sitelog/dreamhost_hacked.html">Dreamhost 漏洞</a>的时候产生的垃圾文件没有删掉，晕死。我说从什么地方跑来的奇怪访问呢。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>补充一下关于 RSS 订阅</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/rss_subscribe_suggest.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1212" title="补充一下关于 RSS 订阅" />
    <id>tag:www.dbanotes.net,2007://1.1212</id>
    
    <published>2007-08-31T05:36:49Z</published>
    <updated>2007-09-07T14:05:36Z</updated>
    
    <summary>FeedBurner 不能访问带来的影响有多大?  Virushuo 和 Che Dong 都说其实没那么严重，因为大部分都是用在线阅读器的，对这一部分的影响到的确是很小，但是要考虑到 GreatNews 用户和其他用桌面客户端工具订阅的啊。

继续是用 FeedBurner 的 Blogger，注意原来在 FeedBurner 上起用高级统计功能的，必须关闭掉，这样 RSS 阅读器抓到的文章链接就不需要通过 FeedBurner 中转了。

另外，在本地 Blog 上引用 FeedBurner 订阅统计数的，会显示不出来。如果你是用 Dreamhost 这样的国外虚拟主机的用户，可以考虑在后台做一个 crontab 脚本，定期 wget 那个 订阅数字图片到本地来，然后直接引用本地图片地址就可以了(这样其实也减少了网络交互，对你的网站提速也有那么一点作用的。

最后一点友情提示: 请统一用我站内的 URL 地址订阅 RSS 更新。 这样每次变化就不会有影响了. 推荐用这两个地址: 

http://www.dbanotes.net/index.xml 
或者
http://www.dbanotes.net/atom.xml

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>FeedBurner 不能访问带来的影响有多大?  <a href="http://blog.devep.net/virushuo/">Virushuo </a>和 <a href="http://www.chedong.com/">Che Dong</a> 都说其实没那么严重，因为大部分都是用在线阅读器的，对这一部分的影响到的确是很小，但是要考虑到 GreatNews 用户和其他用桌面客户端工具订阅的啊。</p>

<p>继续是用 FeedBurner 的 Blogger，注意原来在<strong> FeedBurner 上起用高级统计功能的，必须关闭</strong>掉，这样 RSS 阅读器抓到的文章链接就不需要通过 FeedBurner 中转了。</p>

<p>另外，在本地 Blog 上引用 FeedBurner 订阅统计数的，会显示不出来。如果你是用 <a href="http://www.dreamhost.com/r.cgi?117519">Dreamhost</a> 这样的国外虚拟主机的用户，可以考虑在后台做一个 crontab 脚本，定期 wget 那个 订阅数字图片到本地来，然后直接引用本地图片地址就可以了(这样其实也减少了网络交互，对你的网站提速也有那么一点作用的。</p>

<p>最后一点友情提示: 请统一用我站内的 URL 地址订阅 RSS 更新。 这样每次变化就不会有影响了. 推荐用这两个地址: </p>

<p><a href="http://www.dbanotes.net/index.xml">http://www.dbanotes.net/index.xml</a> 
或者
<a href="http://www.dbanotes.net/atom.xml">http://www.dbanotes.net/atom.xml</a></p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>FeedBurner 被阻尼，Feed 托管转到 FeedSky</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/feedburner_blocked_then_use_feedsky.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1210" title="FeedBurner 被阻尼，Feed 托管转到 FeedSky" />
    <id>tag:www.dbanotes.net,2007://1.1210</id>
    
    <published>2007-08-30T02:29:59Z</published>
    <updated>2007-08-31T05:59:33Z</updated>
    
    <summary>早晚会有这么一天，连 Flickr 都被阻尼了，FeedBurner 每天有大量的&quot;内容&quot;进出，不被阻尼是怪事，被阻尼是正常事件，慢慢的就习惯了。再见， FeedBurner!  广大 Blogger 会想你.

现在默认大多数用户订阅的 Feed 应该自动转换到 FeedSky 上了。今天我还在外面开会，FeedSky 输出的 Feed 集成了 Flickr，会有不少垃圾输出，我尽快修改一下。

如果还不灵，手工用 这个地址更新一下吧: http://feed.feedsky.com/fenng 

Upgrade:
有的朋友在我的 Blog 上搜索 关于这对这个事件对 Feed 地址 URL Rewrite 的信息：
其实并不复杂。我以前也说过，再重复一下。首先在模版管理的地方创建一个 2feedsky_index.xml 的文件，内容和 index.xml 或者 atom.xml 即可。然后在 FeedSky 上把自己的 Feed 地址修改为新创建的这个文件地址。再修改站点根目录下的 .htaccess 文件，内容如下：

Redirect temp /index.xml http://feed.feedsky.com/fenngRedirect temp /atom.xml http://feed.feedsky.com/fenng

FeedBurner 不能访问带来的影响有多大?  Virushuo 和 Che Dong 都说其实没那么严重，因为大部分都是用在线阅读器的，对这一部分的影响到的确是很小，但是要考虑到 GreatNews 用户和其他用桌面客户端工具订阅的啊。

继续是用 FeedBurner 的 Blogger，注意原来在 FeedBurner 上起用高级统计功能的，必须关闭掉，这样 RSS 阅读器抓到的文章链接就不需要通过 FeedBurner 中转了。

另外，在本地 Blog 上引用 FeedBurner 订阅统计数的，会显示不出来。如果你是用 Dreamhost 这样的国外虚拟主机的用户，可以考虑在后台做一个 crontab 脚本，定期 wget 那个 订阅数字图片到本地来，然后直接引用本地图片地址就可以了(这样其实也减少了网络交互，对你的网站提速也有那么一点作用的。

补充建议: 请统一用我站内的 URL 地址订阅 RSS 更新。 这样每次变化就不会有影响了. 推荐用这两个地址: 

http://www.dbanotes.net/index.xml 
或者
http://www.dbanotes.net/atom.xml

另外 FeedBurner 的地址还是保留的，如果用在线阅读工具不会受到影响


--EOF--

2e3587f6</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>早晚会有这么一天，连 Flickr 都被阻尼了，FeedBurner 每天有大量的"内容"进出，不被阻尼是怪事，被阻尼是正常事件，慢慢的就习惯了。再见， FeedBurner!  广大 Blogger 会想你.</p>

<p>现在默认大多数用户订阅的 Feed 应该自动转换到 FeedSky 上了。今天我还在外面开会，FeedSky 输出的 Feed 集成了 Flickr，会有不少垃圾输出，我尽快修改一下。</p>

<p>如果还不灵，手工用 这个地址更新一下吧: <a href="http://feed.feedsky.com/fenng">http://feed.feedsky.com/fenng</a> </p>

<h4>Upgrade:</h4>
<p>有的朋友在我的 Blog 上搜索 关于这对这个事件对 Feed 地址 URL Rewrite 的信息：
其实并不复杂。我以前也说过，再重复一下。首先在模版管理的地方创建一个 2feedsky_index.xml 的文件，内容和 index.xml 或者 atom.xml 即可。然后在 FeedSky 上把自己的 Feed 地址修改为新创建的这个文件地址。再修改站点根目录下的 .htaccess 文件，内容如下：</p>

<pre>Redirect temp /index.xml http://feed.feedsky.com/fenng<br />Redirect temp /atom.xml http://feed.feedsky.com/fenng</pre>

<p>FeedBurner 不能访问带来的影响有多大?  <a href="http://blog.devep.net/virushuo/">Virushuo </a>和 <a href="http://www.chedong.com/">Che Dong</a> 都说其实没那么严重，因为大部分都是用在线阅读器的，对这一部分的影响到的确是很小，但是要考虑到 GreatNews 用户和其他用桌面客户端工具订阅的啊。</p>

<p>继续是用 FeedBurner 的 Blogger，注意原来在<strong> FeedBurner 上起用高级统计功能的，必须关闭</strong>掉，这样 RSS 阅读器抓到的文章链接就不需要通过 FeedBurner 中转了。</p>

<p>另外，在本地 Blog 上引用 FeedBurner 订阅统计数的，会显示不出来。如果你是用 Dreamhost 这样的国外虚拟主机的用户，可以考虑在后台做一个 crontab 脚本，定期 wget 那个 订阅数字图片到本地来，然后直接引用本地图片地址就可以了(这样其实也减少了网络交互，对你的网站提速也有那么一点作用的。</p>

<p>补充建议: 请统一用我站内的 URL 地址订阅 RSS 更新。 这样每次变化就不会有影响了. 推荐用这两个地址: </p>

<p><a href="http://www.dbanotes.net/index.xml">http://www.dbanotes.net/index.xml</a> 
或者
<a href="http://www.dbanotes.net/atom.xml">http://www.dbanotes.net/atom.xml</a></p>

<p>另外 FeedBurner 的地址还是保留的，如果用在线阅读工具不会受到影响</p>

<p><br />
--EOF--</p>

<p>2e3587f6</p>]]>
        
    </content>
</entry>

<entry>
    <title>MT4 升级经验谈(之三) 留言篇</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/mt4_upgrade_comment_config.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1207" title="MT4 升级经验谈(之三) 留言篇" />
    <id>tag:www.dbanotes.net,2007://1.1207</id>
    
    <published>2007-08-27T13:24:10Z</published>
    <updated>2007-08-27T15:18:52Z</updated>
    
    <summary>上周留言突破了 5000 条，很不容易。谢谢这些在我的 Blog 上不辞辛劳留言的朋友们。

自从正式迁移到 MT 4 ，到我发这篇为止，我一共收到了一则垃圾留言，只有一则垃圾留言。相对原来每天成百上千条的拉机信息轰炸，这下子总算眼前清净了许多。

MT 4  支持两类评论方式：验证或者是匿名评论。

匿名评论需要输入有效的邮件地址，并且需要写对下面的验证字。对不起，我起用了我也很讨厌的验证字，也是无奈之举。

验证支持 OpenID、TypeKey、LiveJournal、Vox 以及 Movable Type(也就是在本地 Blog 上注册的，我暂时关闭了注册)。MT 4 内建支持 OpenID 验证，其他几个验证方式都是自己家的产品(不巧的是有两个都被阻尼了)。我喜欢用 TypeKey (我的 Profile)。

经过验证后的评论是不需要审核的，直接发表。而匿名评论我设为需要审核才可以发表。

对于常来的朋友，最好不要用匿名评论，我都觉得有些麻烦。而且，匿名评论附带的网址是得不到 PageRank 的，暂时是这样设置。


--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>上周留言突破了 5000 条，很不容易。谢谢这些在我的 Blog 上不辞辛劳留言的朋友们。</p>

<p>自从正式迁移到 MT 4 ，到我发这篇为止，我一共收到了一则垃圾留言，<strong>只有</strong>一则垃圾留言。相对原来每天成百上千条的拉机信息轰炸，这下子总算眼前清净了许多。</p>

<p>MT 4  支持两类评论方式：验证或者是匿名评论。</p>

<p>匿名评论需要输入有效的邮件地址，并且需要写对下面的验证字。对不起，我起用了我也很讨厌的验证字，也是无奈之举。</p>

<p>验证支持 OpenID、<a href="http://www.typekey.com/">TypeKey</a>、<a href="http://www.LiveJournal.com/">LiveJournal</a>、Vox 以及 Movable Type(也就是在本地 Blog 上注册的，我暂时关闭了注册)。MT 4 内建支持 OpenID 验证，其他几个验证方式都是自己家的产品(不巧的是有两个都被阻尼了)。我喜欢用 TypeKey (<a href="http://profile.typekey.com/Fenng">我的 Profile</a>)。</p>

<p>经过验证后的评论是不需要审核的，直接发表。而匿名评论我设为需要审核才可以发表。</p>

<p>对于常来的朋友，最好不要用匿名评论，我都觉得有些麻烦。而且，匿名评论附带的网址是得不到 PageRank 的，暂时是这样设置。</p>

<p><br />
--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>MT4 升级经验谈(之二) 插件篇</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/mt4_migration_ii_plugins.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1205" title="MT4 升级经验谈(之二) 插件篇" />
    <id>tag:www.dbanotes.net,2007://1.1205</id>
    
    <published>2007-08-24T11:46:41Z</published>
    <updated>2007-08-24T13:01:47Z</updated>
    
    <summary><![CDATA[上一篇谈到了升级到 MT4 之前需要考虑的事情。这一篇谈谈安装后插件的配置情况。MT 4 新集成了不少插件，但不是每个人对每个插件都能用上，而且有的编辑器插件真有点画蛇添足，我写 Blog 都是直接写 HTML 代码，其实只需要熟练掌握少数几个代码即可把 Blog 格式的可读性控制的很好。

我眼里的唯一的一个亮点就是 Feeds.App Lite 终于能支持中文了。以前用过几次，遇到中文就把整个页面都变成了乱码。这次通过这个插件把我的 del.icio.us 内容显示到首页了。看来今后也可以考虑把 Twitter 集成过来。

出于性能考虑，能不用的默认插件最好禁止掉。非默认的插件我用了如下几个:

MTRelatedEntries ByKeyword 插件用来显示相关文章
好多朋友都问我单篇归档上的相关文章是用什么做到的? 答案就是这个 MTRelatedEntries ByKeyword 插件。把该插件下载到 MT 的 Plugin 目录下，最好创建一个单独目录放置文件(个别 Beta  版本不能识别直接放在 Plugin 下的内容).  然后在模版管理的地方创建一个 Widget ，内容如下: 

&lt;ul class="widget-list" &gt;
&lt;MTRelatedEntriesByKeyword&gt;
&lt;MTEntries lastn="8"&gt;
&lt;li class="widget-list-item"&gt;
&lt;a href="&lt;$MTEntryPermalink$&gt;"&gt;&lt;MTEntryTitle&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/MTEntries&gt;
&lt;/MTRelatedEntriesByKeyword&gt;
&lt;/ul&gt;


这段显示关键字类似的 8 篇文章。在相关地方引用这个 Widget 即可。这个插件对 dbanotes.net 来说是不可或缺的。

对于相关文章显示，其实还有另外一种实现方法，也就是在 MT 邮件列表里大家讨论的 Tag Supplementals。这个是依赖 Tag 的，而我的 Blog 基本上用 Tag 对文章"分类"的，关键字贴近文章属性，所以我还是用老方法。

缩写词插件（Acronym Plugin)
插件是干啥的?  鼠标放在 MT 上看看效果就知道了。配置与使用都很简单，参考Acronym Plugin 首页的介绍。我很早就在使用这个插件，对这个插件的词库做了一点扩充，感兴趣的朋友可以在本地下载. 这个插件倒不是不可或缺的，只是有的时候我喜欢用一些术语缩写，该插件的提示让读者更容易理解。这也就是所谓的提高用户体验吧.

Paged Archives 插件对过长归档页面分页
原以为 MT 4 会默认带有分页功能，希望落空，还要自己想办法。Paged Archives 是否完全兼容 MT 4，还没有得到确认，插件作者说得也比较模糊。经过我的尝试，勉强可以用。还有 Bug 存在。要注意起用的时候，在模版中有两个地方都要添加 &lt;MTPAEntry&gt; 与 &lt;MTPAEnd&gt; 标记。还没有完全用灵活，具体经验随后分享吧。

使用新插件需要考虑的事情：该插件简单易用么? 是否需要修改现有程序，强调是"程序"，如果修改程序的话，以后每次升级 MT ，都要考虑到这个事情，会带来很多后续的工作量。此外要考虑是否需要修改数据库? 插件需要额外修改数据库的也比较麻烦，很可能会带来比较严重的性能问题。

--EOF--]]></summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>上一篇谈到了<a href="http://www.dbanotes.net/sitelog/mt4_migration_i.html">升级到 MT4 之前需要考虑的事情</a>。这一篇谈谈安装后插件的配置情况。MT 4 新集成了不少插件，但不是每个人对每个插件都能用上，而且有的编辑器插件真有点画蛇添足，我写 Blog 都是直接写 HTML 代码，其实只需要熟练掌握少数几个代码即可把 Blog 格式的可读性控制的很好。</p>

<p>我眼里的唯一的一个亮点就是 <a href="http://code.appnel.com/feeds-app">Feeds.App Lite</a> 终于能支持中文了。以前用过几次，遇到中文就把整个页面都变成了乱码。这次通过这个插件把<a href="http://del.icio.us/fenng">我的 del.icio.us</a> 内容显示到首页了。看来今后也可以考虑把 Twitter 集成过来。</p>

<p>出于性能考虑，能不用的默认插件最好禁止掉。非默认的插件我用了如下几个:</p>

<h4>MTRelatedEntries ByKeyword 插件用来显示相关文章</h4>
<p>好多朋友都问我单篇归档上的相关文章是用什么做到的? 答案就是这个 <a href="http://rayners.org/2002/12/mtrelatedentrie.php">MTRelatedEntries ByKeyword</a> 插件。把该插件下载到 MT 的 Plugin 目录下，最好创建一个单独目录放置文件(个别 Beta  版本不能识别直接放在 Plugin 下的内容).  然后在模版管理的地方创建一个 Widget ，内容如下: </p>

<pre>&lt;ul class="widget-list" &gt;
&lt;MTRelatedEntriesByKeyword&gt;
&lt;MTEntries lastn="8"&gt;
&lt;li class="widget-list-item"&gt;
&lt;a href="&lt;$MTEntryPermalink$&gt;"&gt;&lt;MTEntryTitle&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/MTEntries&gt;
&lt;/MTRelatedEntriesByKeyword&gt;
&lt;/ul&gt;
</pre>

<p>这段显示关键字类似的 8 篇文章。在相关地方引用这个 Widget 即可。这个插件对 dbanotes.net 来说是不可或缺的。</p>

<p>对于相关文章显示，其实还有另外一种实现方法，也就是在 MT 邮件列表里大家讨论的 <a href="http://code.as-is.net/public/wiki/TagSupplementals_Plugin">Tag Supplementals</a>。这个是依赖 Tag 的，而我的 Blog 基本上用 Tag 对文章"分类"的，关键字贴近文章属性，所以我还是用老方法。</p>

<h4>缩写词插件（Acronym Plugin)</h4>
<p>插件是干啥的?  鼠标放在 MT 上看看效果就知道了。配置与使用都很简单，参考<a href="http://gemal.dk/mt/acronym.html">Acronym Plugin 首页</a>的介绍。我很早就在使用这个插件，对这个插件的词库做了一点扩充，感兴趣的朋友可以在本地<a href="http://www.dbanotes.net/tmp/acronym.db">下载</a>. 这个插件倒不是不可或缺的，只是有的时候我喜欢用一些术语缩写，该插件的提示让读者更容易理解。这也就是所谓的提高用户体验吧.</p>

<h4>Paged Archives 插件对过长归档页面分页</h4>
<p>原以为 MT 4 会默认带有分页功能，希望落空，还要自己想办法。<a href="http://www.aldenbates.com/plugins/pagedarchives.html">Paged Archives</a> 是否完全兼容 MT 4，还没有得到确认，插件作者说得也比较模糊。经过我的尝试，勉强可以用。还有 Bug 存在。要注意起用的时候，在模版中有两个地方都要添加 &lt;MTPAEntry&gt; 与 &lt;MTPAEnd&gt; 标记。还没有完全用灵活，具体经验随后分享吧。</p>

<p>使用新插件需要考虑的事情：该插件<strong>简单易用</strong>么? 是否需要修改现有程序，强调是"程序"，如果修改程序的话，以后每次升级 MT ，都要考虑到这个事情，会带来很多后续的工作量。此外要考虑<strong>是否需要修改数据库</strong>? 插件需要额外修改数据库的也比较麻烦，很可能会带来比较严重的性能问题。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>MT4 升级经验谈(之一)</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/mt4_migration_i.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1204" title="MT4 升级经验谈(之一)" />
    <id>tag:www.dbanotes.net,2007://1.1204</id>
    
    <published>2007-08-23T12:47:06Z</published>
    <updated>2007-08-24T06:10:21Z</updated>
    
    <summary>
经过了短暂测试之后，正式把 Blog 切换到了 Movable Type 4 正式版上。收集了一些朋友的意见之后，对旧模版进行了一些调整。

迁移之前需要考虑的问题：
1) 是否一定要迁移 ? 迁移的目的是什么?
2) 旧有插件的兼容性? 
3) 是否要重新设计模版，如果重新设计，需要的工作量

迁还是不迁? 
MT 4 相对 MT 3 来说，做了很多改进，不过对于我来说，只有两个功能还算吸引人。一个是留言系统重构(默认验证字(CAPTCHA)的支持以及对留言方式的改进)。另外一个则是 MT 4 采用了新的版权方式，软件开源。过去几个月里，真的被 Spam 轰炸折腾烦了。采用全新模式安装的 MT 4 经过几天的测试后，发现没有放过一个 Spam！从这一点来说，必须升级。而新的软件版权方式也能让老用户相信 MT 焕发了青春，会有更多的开源研发力量投入。不会被 WordPress 甩的太远。

为什么不用 WordPress  呢? 只有一个理由：MT 是全静态发布的，用户访问页面的时候对数据库产生的压力非常小。而 WP 是伪静态发布，对性能的压力大一些。不要忘了，我的 Blog 可是假设在 Dreamhost 这个专给穷人用的虚拟主机供应商上面的。静态，只有静态才是王道。

插件兼容性
插件问题是第二个需要考虑的，期待原来使用的插件都能被 MT 4 兼容是不太现实的。先看一下插件兼容列表 ，不兼容的列表能否不用? 还好，问题不大，只有一个 Blogroll 插件，如果不用，可以通过手工 HTML 代码来做到，工作量不算大。

模版重新设计
MT 3 的模版也可以在 MT 4 上使用，原打算不重新设计模版了，因为这是个耗时间的活儿。可是在全新安装的 MT 上尝试使用了新的模版体系之后，觉得有必要起用 MT 4 的模版系统。如果说 MT 3 的模版已经在模块化上前进了一步的话，那么 MT 4 就是一个飞跃，完全的模块化，模块可复用的程度大大提高。一次设计，以后获益。痛下决心，重新设计一套。

从哪里开始?
从哪里开始? 当然是全新安装一个 MT 4 ，使用新的空数据库，不要和现有的 MT 3 或是测试版有数据交互。然后是测试插件，修改模版，迁移（参考 MT 4 官方站点的推荐方法)，然后重新改进。

新鲜的 MT 4 安装完毕后，我遇到了第一个问题：留言的邮件通知信是乱码，因为默认的 mt-config.cgi 配置信息是没有设置 MailEncoding 参数的。

下一篇谈一下 MT 4 上我使用的插件。

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p><span class="mt-enclosure mt-enclosure-image"><img alt="Powered By Movable Type" src="http://www.dbanotes.net/Images/mt4-bug-mt-white.png" width="120" height="60" class="mt-image-left" style="float: left; margin: 0 20px 20px 0;"/></span><br />
<p>经过了短暂测试之后，正式把 Blog 切换到了 Movable Type 4 正式版上。收集了一些朋友的意见之后，对旧模版进行了一些调整。</p></p>

<p>迁移之前需要考虑的问题：
<ul><li>1) 是否一定要迁移 ? 迁移的目的是什么?</li>
<li>2) 旧有插件的兼容性? </li>
<li>3) 是否要重新设计模版，如果重新设计，需要的工作量</li></ul></p>

<h4>迁还是不迁? </h4>
<p>MT 4 相对 MT 3 来说，做了很多改进，不过对于我来说，只有两个功能还算吸引人。一个是留言系统重构(默认验证字(CAPTCHA)的支持以及对留言方式的改进)。另外一个则是 MT 4 采用了新的版权方式，软件开源。过去几个月里，真的被 Spam 轰炸折腾烦了。采用全新模式安装的 MT 4 经过几天的测试后，发现没有放过一个 Spam！从这一点来说，必须升级。而新的软件版权方式也能让老用户相信 MT 焕发了青春，会有更多的开源研发力量投入。不会被 WordPress 甩的太远。</p>

<p>为什么不用 WordPress  呢? 只有一个理由：MT 是全静态发布的，用户访问页面的时候对数据库产生的压力非常小。而 WP 是伪静态发布，对性能的压力大一些。不要忘了，我的 Blog 可是假设在 Dreamhost 这个专给穷人用的虚拟主机供应商上面的。静态，只有静态才是王道。</p>

<h4>插件兼容性</h4>
<p>插件问题是第二个需要考虑的，期待原来使用的插件都能被 MT 4 兼容是不太现实的。先看一下<a href="http://wiki.movabletype.org/Works_with_MT4">插件兼容列表</a> ，不兼容的列表能否不用? 还好，问题不大，只有一个 Blogroll 插件，如果不用，可以通过手工 HTML 代码来做到，工作量不算大。</p>

<h4>模版重新设计</h4>
<p>MT 3 的模版也可以在 MT 4 上使用，原打算不重新设计模版了，因为这是个耗时间的活儿。可是在全新安装的 MT 上尝试使用了新的模版体系之后，觉得有必要起用 MT 4 的模版系统。如果说 MT 3 的模版已经在模块化上前进了一步的话，那么 MT 4 就是一个飞跃，完全的模块化，模块可复用的程度大大提高。一次设计，以后获益。痛下决心，重新设计一套。</p>

<h4>从哪里开始?</h4>
<p>从哪里开始? 当然是全新安装一个 MT 4 ，使用新的空数据库，不要和现有的 MT 3 或是测试版有数据交互。然后是测试插件，修改模版，迁移（参考 MT 4 官方站点的<a href="http://www.movabletype.org/documentation/upgrade/">推荐方法</a>)，然后重新改进。</p>

<p>新鲜的 MT 4 安装完毕后，我遇到了第一个问题：<a href="http://www.dbanotes.net/sitelog/mt_331_email_notify_message_garbled.html">留言的邮件通知信是乱码</a>，因为默认的 mt-config.cgi 配置信息是没有设置 MailEncoding 参数的。</p>

<p>下一篇谈一下 MT 4 上我使用的插件。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

<entry>
    <title>Blog 准备迁移到 MT4</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/blog_mt4.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1202" title="Blog 准备迁移到 MT4" />
    <id>tag:www.dbanotes.net,2007://1.1202</id>
    
    <published>2007-08-21T13:29:32Z</published>
    <updated>2007-08-23T05:35:09Z</updated>
    
    <summary>这几天利用一点空闲时间定制了 MT4(点击查看测试页面，现在切换到首页了 2007/08/23), 其实我现在 Blog 已经在用 MT4 Beta2 了，为什么还要搞个新测试页面呢? 差异在于正式版和我现在用的 Beta 版之间模版体系是不一样的。经过一段时间的熟悉，我发现 MT4 新的模版设计理念真让人赞叹。

要感谢 FireBug 这个工具让我节省了大量时间。测试页面中的模版是根据 Unity-Blue 这个模版定制的，基本上和我原来的模版风格保持一致。

等正式起用这个新模板之后和大家分享一下该过程之中的一些经验。

--EOF--
</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>这几天利用一点空闲时间定制了 MT4(<a href="http://www.dbanotes.net/mt4/">点击查看测试页面</a>，现在切换到首页了 2007/08/23), 其实我现在 Blog 已经在用 MT4 Beta2 了，为什么还要搞个新测试页面呢? 差异在于正式版和我现在用的 Beta 版之间模版体系是不一样的。经过一段时间的熟悉，我发现 MT4 新的模版设计理念真让人赞叹。</p>

<p>要感谢 <a href="http://www.getfirebug.com/">FireBug</a> 这个工具让我节省了大量时间。测试页面中的模版是根据 Unity-Blue 这个模版定制的，基本上和我原来的模版风格保持一致。</p>

<p>等正式起用这个新模板之后和大家分享一下该过程之中的一些经验。</p>

<p>--EOF--<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>写 Blog 这件事儿</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/about_blog.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1172" title="写 Blog 这件事儿" />
    <id>tag:www.dbanotes.net,2007://1.1172</id>
    
    <published>2007-07-25T11:51:59Z</published>
    <updated>2007-07-25T12:01:03Z</updated>
    
    <summary>今天总算看到 FeedBurner 显示的订阅数字超过 5000 个了。算是我这个 Blog 的一个里程碑吧，自我虚荣一下。虽然这个数字里面有很大的重复订阅量。通过这个 Blog 分享了一些信息，也认识了不少朋友，这是让人快乐的事情。

关于写 Blog 这件事儿
很早以前我写过一篇 《Blog 写给谁》 很清楚的说明了自己写 Blog 的角度。既然这样，我写的东西肯定带有很大的个人倾向，我自己的立场。写这个东西没有谁给我发工资，还要自己掏钱买空间，域名续费什么的，容易么? 我不能保证所有文章都是墙头草，谁都不得罪，我也不能保证总写技术，也不能保证总写一些技术概述(这类东西读者多，被抄袭的也多)，我喜欢写影评，那就写点，觉得没价值简单看个标题就过去好了，没必要看完了觉得不爽，非要表达一下自己的情绪，要知道我这个破 Blog 速度是出奇的慢。
最近有几篇还出现了一点不那么和谐的声音。也有人留言告诉我&quot;应该&quot;怎么做，怎么写。有语言洁癖的同学其实大可不看，风花雪月的你可以去看郭敬明，去看老徐，来这里浪费时间干嘛? 从小到大都被当作棋子儿，走别人划的印走惯了? 身体刚不那么柔软了，就开始想给别人划印了? 

关于 Blog 内容的抄袭者
有些人可能看到我总结的玩意儿后觉得有点参考价值，就转载了一下。有的人注意到我每篇文章前面的声明，保留了版权信息和出处，在当前的网络文化下，我只能表示&quot;欣赏&quot;。而有些人给改头换面之后再来个 &quot;CTRL+C / CTRL+V&quot;, 这是我最厌恶的方式。如果你觉得内容真的有用的话，直接收藏地址不就成了嘛? 不知道 del.icio.us 还不知道雅虎收藏+、百度搜藏么? 还不知道的话，你 IE 上不是还有个收藏夹么? 非把内容弄到你那一亩三分地干嘛? 再说了，如果是技术信息，我以后还有更新怎么办? 你在那里不是误导别人么? 对于不遵守我的版权声明的转载一律视为抄袭者。这样的人我这个 Blog 不欢迎! 

关于 Blog 最近的一些计划
MT4 正式发布之后将重新设计一下模版。目前的模版拼拼凑凑的，问题不少，留言问题其实也和模版相互关联有关。尝试彻底解决一下。目前的空间还存在不少安全问题，真没准儿哪天直接给人一窝端了。如果真是这样，我还省心了。:)

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>今天总算看到 FeedBurner 显示的订阅数字超过 5000 个了。算是我这个 Blog 的一个里程碑吧，自我虚荣一下。虽然这个数字里面有很大的重复订阅量。通过这个 Blog 分享了一些信息，也认识了不少朋友，这是让人快乐的事情。</p>

<h4>关于写 Blog 这件事儿</h4>
<p>很早以前我写过一篇 <a href="http://www.dbanotes.net/mylife/blog_for_who.html">《Blog 写给谁》</a> 很清楚的说明了自己写 Blog 的角度。既然这样，我写的东西肯定带有很大的个人倾向，我自己的立场。写这个东西没有谁给我发工资，还要自己掏钱买空间，域名续费什么的，容易么? 我不能保证所有文章都是墙头草，谁都不得罪，我也不能保证总写技术，也不能保证总写一些技术概述(这类东西读者多，被抄袭的也多)，我喜欢写影评，那就写点，觉得没价值简单看个标题就过去好了，没必要看完了觉得不爽，非要表达一下自己的情绪，要知道我这个破 Blog 速度是出奇的慢。</p>
<p>最近有几篇还出现了一点不那么和谐的声音。也有人留言告诉我"应该"怎么做，怎么写。有语言洁癖的同学其实大可不看，风花雪月的你可以去看郭敬明，去看老徐，来这里浪费时间干嘛? 从小到大都被当作棋子儿，走别人划的印走惯了? 身体刚不那么柔软了，就开始想给别人划印了? </p>

<h4>关于 Blog 内容的抄袭者</h4>
<p>有些人可能看到我总结的玩意儿后觉得有点参考价值，就转载了一下。有的人注意到我每篇文章前面的声明，保留了版权信息和出处，在当前的网络文化下，我只能表示"欣赏"。而有些人给改头换面之后再来个 "CTRL+C / CTRL+V", 这是我最厌恶的方式。如果你觉得内容真的有用的话，直接收藏地址不就成了嘛? 不知道 del.icio.us 还不知道雅虎收藏+、百度搜藏么? 还不知道的话，你 IE 上不是还有个收藏夹么? 非把内容弄到你那一亩三分地干嘛? 再说了，如果是技术信息，我以后还有更新怎么办? 你在那里不是误导别人么? <strong>对于不遵守我的版权声明的转载一律视为抄袭者</strong>。这样的人我这个 Blog 不欢迎! </p>

<h4>关于 Blog 最近的一些计划</h4>
<p>MT4 正式发布之后将重新设计一下模版。目前的模版拼拼凑凑的，问题不少，留言问题其实也和模版相互关联有关。尝试彻底解决一下。目前的空间还存在不少安全问题，真没准儿哪天直接给人一窝端了。如果真是这样，我还省心了。:)</p>

<p>--EOF--<br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>站点被黑，Dreamhost 还需要提高安全</title>
    <link rel="alternate" type="text/html" href="http://www.dbanotes.net/sitelog/dreamhost_hacked.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://www.dbanotes.net/MT/mt-atom.cgi/weblog/blog_id=1/entry_id=1126" title="站点被黑，Dreamhost 还需要提高安全" />
    <id>tag:www.dbanotes.net,2007://1.1126</id>
    
    <published>2007-06-07T10:56:02Z</published>
    <updated>2007-06-07T15:16:22Z</updated>
    
    <summary>刚才发现站点被&quot;黑&quot;了，问题倒似乎不大，默认页面被做了手脚。

最近 Dreamhost 据说有 3500 多用户被黑(英文报道)。

出现这么大范围的安全问题，再推托责任可就说不过去了。最然我 Dreamhost 账户上还有 $120，也不打算用了，准备换个虚拟主机提供商。

看来是新的漏洞，页面直接被冲掉，首页内迁了一点内容转向一个垃圾站: hxxp://m-gallery.org/images/111/index.php  我对URL做了处理，访问的时候要小心!!!

Updated : Dreamhost 的官方通告

Updated2 : 基本思路，遍历各目录下 index.* 文件，传入恶意代码。权限应该是通过破解抓取 FTP 账户得到。Dreamhost 有些时候对用户的密码是明文发送的，必须刚修改密码后，就是明文显示在页面上。电子邮件也是明文发送密码，初步判断被人获取了相关 Log ，抓到了大量用户的密码。

--EOF--</summary>
    <author>
        <name>Fenng</name>
        <uri>http://www.dbanotes.net/</uri>
    </author>
    
        <category term="SiteLog" />
    
    <content type="html" xml:lang="en" xml:base="http://www.dbanotes.net/">
        <![CDATA[<p>刚才发现站点被"黑"了，问题倒似乎不大，默认页面被做了手脚。</p>

<p>最近 <a href="http://plod.popoever.com/archives/001260.html">Dreamhost 据说有 3500 多用户被黑</a>(<a href="http://www.caydel.com/dreamhost-leaks-3500-ftp-passwords/">英文报道</a>)。</p>

<p>出现这么大范围的安全问题，再推托责任可就说不过去了。最然我 Dreamhost 账户上还有 $120，也不打算用了，准备换个虚拟主机提供商。</p>

<p>看来是新的漏洞，页面直接被冲掉，首页内迁了一点内容转向一个垃圾站: hxxp://m-gallery.org/images/111/index.php  我对URL做了处理，<strong>访问的时候要小心</strong>!!!</p>

<p>Updated : <a href="http://www.dreamhoststatus.com/2007/06/06/security-breach/">Dreamhost 的官方通告</a></p>

<p>Updated2 : 基本思路，遍历各目录下 index.* 文件，传入恶意代码。权限应该是通过破解抓取 FTP 账户得到。Dreamhost 有些时候对用户的密码是明文发送的，必须刚修改密码后，就是明文显示在页面上。电子邮件也是明文发送密码，初步判断被人获取了相关 Log ，抓到了大量用户的密码。</p>

<p>--EOF--</p>]]>
        
    </content>
</entry>

</feed> 

