Movable Type 完全手册:附录四 ─ 补增信息

« 目录


补增信息

随著时间飞逝, Six Apart 终于在 2003 年圣诞节前夕释出了 2.65 版的 Movable Type ,这是一份安全性更新,修补了 XML-RPC 服务器以及邮件转发的潜在漏洞;这个版本同时还增加了对 Atom API 的支持,也为此增加了一些没有列在文件中的卷标。

我紧锣密鼓地也赶在 2003 年年底释出了新的安装套件,除了针对新版 Movable Type 进行翻修之外,也加强了预设模版,让它更适合中文使用者的情境;同时,我也加入了一些好用的外挂模块,让使用者能更轻松地建构完善的环境。当然事情远比这还要复杂,随著本书专属站台日益完善,许多原本得到处搜刮的资源现在也都可以直接在 http://mtbook.net/ 取得了。有鉴于这些改变,本书的改版更新可以说是迫不及待,于是我决定补增一份附录,把这些事情好好讲清楚,顺便把原来就没有交代清楚的细节也交代一番。

下载最新版本的档案

第一章里,我们曾经为各位介绍过艺立协的安装套件,现在这个套件的任何更新档都可以在本书专属站台下载页面 http://mtbook.net/download.html 取得;同样的本来提供给要把 Movable Type 装在虚拟主机或非 Windows 系统上的使用者的档案,现在也能在本书专属站台下载页面 http://mtbook.net/download.html 取得。你祇需要如图这样在档名或下载图标上点选,就能够下载或开启档案了。

在 MTBook.net 首页点选右方导览列的「档案下载」链接
图一:请先连到本书专属网页 http://mtbook.net 的首页,然后按下右方导览列的「档案下载」链接。
MTBook.net 的档案下载页面
图二:在档案下载页面中,可以点选档案名称或右方的图标以下载档案;你也可以先阅读每个档案的说明、以及比对 MD5 加总检查核对码。

让我们来看看上头有些甚么值得你注意的东西:

原则上上述这些档案,也多半能在本书附赠的 CD 里,找到还算稳定的堪用版本;因此当你因故无法存取网络时,不妨就用这张 CD 救急吧!

安装与反安装

许多使用 Windows 安装档的朋友一直不清楚到底这个安装档会装进些甚么、又该怎么反安装、反安装完又会遗留下些甚么东西。事实上诚如第一章所述,这个安装档除了会帮你安装 Movable Type 外,也会把 parlApache 装起来;前者是执行 Movable Type 所需的 Perl 执行环境,后者则是网页服务器。如果你需要把这两个组件移除掉的话,到「控制台」的「新增/移除」是没有办法的。你得执行他们各自目录里的反安装程序才行:

另外,在安装的时候安装档会试著保留下列这些东西(如果他们出现在安装路径里的话)而不会覆盖:

因此你可以放心地从「控制台」的「新增/移除」里移除 Movable Type ,然后再从新版的安装档安装,而毋须担心任何的网志组态、文章会遗失。事实上当你移除 Movable Type 时,(几乎)所有可能有所更动的档案都会被保留下来,这包括了:

所以你祇需要把整个目录另存副本,就可以轻易地备份所有的网志数据。

从「新增或移除程序」里移除 Movable Type
图三:单纯祇从「新增或移除程序」里移除 Movable Type 的话,并不会真的把所有的组件都清乾净。

FreeBSD 上的快速安装

好消息是,现在 leeym 负责了 FreeBSD 上的中文 Movable Type ports ,所以要把中文化过的 Movable Type 安装到 FreeBSD 上就变得万分简单。你祇需要以 root 登入,然后这么做就可以了:

cd /usr/ports/chinese/MT
make clean install

如果你有装了 sudo ,而且你自己的帐号亦属于 sudoer 的话,也可以这么做:

cd /usr/ports/chinese/MT
sudo make clean install

中文日期格式

我们曾经在第二章介绍过网志组态里的「显示日期用的语言」选项,当时我们说官方的 Movable Type 并没有中文日期格式可用,不过现在我们自己放进了分别由 mhsincontagious 所提供的中文日期格式,兹整理如下:

中文的日期格式、变数、与效果范例
变数 意义 显示日期的语言及效果
中文 (zh) 彻底中文 (zh_all) 台湾, 中华民国 (tw)
内建 %a 一周里的哪一天,以缩写表示 无法使用 无法使用 无法使用
%A 一周里的哪一天,以全称表示 星期二 星期二 星期二
%b 月份名称的缩写 无法使用 无法使用 12
%B 完整的月份名称 十二月 十二月 12
%d 该月的第几天,以两位数字表示;必要的时候在前面补 0 30 30 三十
%e 该月的第几天,必要的时候在前面补上空白 30 30 30
%H 时,以 24 时制(军队时制)表示成两位数字,必要的时候在前面补 0 03 03
%I 时,以 12 时制表示成两位数字,必要的时候在前面补 0 03 03 03
%j 该年的第几天,以三位数字表示,必要的时候在前面补 0 364 364 364
%k 时,以 24 时制(军队时制)表示成两位数字,必要的时候在前面补上空白 3 3 3
%l 时,以 12 时制表示成两位数字,必要的时候在前面补上空白 3 3 3
%m 月份,以两位数字表示,必要的时候在前面补 0 12 12 十二
%M 分,以两位数字表示,必要的时候在前面补 0 00 00
%p AMPM 上午 上午 上午
%S 秒,以两位数字表示,必要的时候在前面补 0 01 01
%x 按照语言决定的日期格式 2003年12月30日 星期二 民国九十二年十二月三十日 星期二 民国九十二年十二月三十日
%X 按照语言决定的日期格式 上午03时00分 上午三时零分 上午三点零分
%y 年份,以两位数字表示,必要的时候在前面补 0 03 03 03
%Y 年份,以四位数字表示 2003 2003 九十二
额外 %V 小写四位数公元年份简读 二零零四
%v 小写二位数公元年份简读 零四
%U 大写四位数公元年份简读 贰零零肆
%u 大写二位数公元年份简读 零肆
%C 小写民国年份全读 九十三
%c 大写民国年份全读 玖拾参
%T 小写公元年份全读 二千零四
%t 大写公元年份全读 贰仟零肆
%Q 小写月份全读
%q 大写月份全读
%R 该月的第几天,小写全读 十五
%r 该月的第几天,大写全读 拾伍
%F 时,以 24 时制表示成小写全读 十六
%f 时,以 12 时制表示成小写全读
%G 时,以 24 时制表示成小写简读 一六
%g 时,以 12 时制表示成小写简读 零四
%N 分,小写全读 三十二
%n 分,小写简读 三二
%O 秒,小写全读
%o 秒,小写简读 零零

不在文件里的 mt.cfg 指令

Movable Type 从 2.66 版起,又多了一个可以加在 mt.cfg 里的指令(选项):

不在文件里的模版卷标

Movable Type 屡次改版中,并不是所有的模版卷标都会被记载在文件里。有些卷标可能祇在版本更新演进史里提到过,或者是你必须亲自去探索新的预设模版才会发现的。这些新卷标往往是为了满足特定需求、或者让事情更加合理及方便才被做出来的,因此你当然也应该把他们放进你的模版里,然后把原来为了相同目的而装的外挂模块给扔开。以下就让我们来看看这些模版卷标:

我们在下一节所要介绍的预设模版,正是用上了这些新增而又没有被放进文件里的模版卷标;所以一方面这些模版会有适用的版本限制,另一方面则是你得先搞懂他们到底有些甚么功用,才能随意修改。

中文化过的预设模版

我在本书专属站台上也提供了中文化过的预设模版,这份模版除了把官方预设模版中文化外,又略加调整过,因此即便你选用了中文日期格式、中文类别描述、类别图标、或者启用了允许匿名回响的功能时,一切看起来仍旧相当正确,不会有不知所云的情况。

这份模版可以在 http://mtbook.net/default-templates.html 找到,你可以轻易地选取、复制,然后贴回你自己的网志里。

在 MTBook.net 首页点选右方导览列的「预设模版」链接
图四:请先连到本书专属网页 http://mtbook.net 的首页,然后按下右方导览列的「预设模版」链接。
点选「 Atom 索引」的链接
图五:你可以从页面上方的清单里快速选取要察看的预设模版;在这个例子里我们选的是 Movable Type 2.65 新增的 Atom 索引模版。
从鼠标右键选单里「全选」整个模版内容
图六:你可以看到每个模版实际所属的模版类别,也可以看到这个模版应该要有的输出档名。接下来你该做的事情是在模版内容区块里按下鼠标右键,选择「全选」。
从鼠标右键选单里「复制」整个模版内容
图七:全选了之后,请再次按下鼠标右键,然后选「复制」,把整个模版的内容复制到剪贴簿里。
在「列出模版」画面中,按下「索引模版」区段的「建立新的索引模版」链接
图八:接下来请回到你自己的网志管理后台,在「列出模版」画面中,按下「索引模版」区段里的「建立新的索引模版」链接(因为在这个升级的例子里,我们没有 Atom 索引模版。如果你祇是要把弄烂的模版还原的话,也可以直接按下编辑该模版的链接)。
从鼠标右键选单里把刚刚复制起来的模版内容「贴上」
图九:(如果你是要还原某个模版的话,别忘了要先「全选」)从鼠标右键选单里选择贴上,把刚刚我们复制到剪贴簿里的模版内容给贴进去;同时「模版名称」和「输出档案」也别忘了按照刚刚页面上的信息填妥。
按下「储存」按钮
图十:最后按下「储存」按钮,就大功告成了(当然你也有可能会想要重建这个模版,不过这是后面小节的内容了)。

现在就让我们看看有哪些预设模版:

所见即所得的文章编辑功能

新的 Movable Type 的 Windows 安装档(以及 mt.diff )会把原本我们在第三章介绍过的超级链接与文字变化按钮给取消掉,改以功能更为强大的 htmlArea 代替之;这是一个所见即所得 (WYSIWYG, What You See Is What You Get) 的 HTML 编辑接口,有各式各样的按钮,帮助你做出字型变化,或插入图片、链接、表格等。

当你进入编辑文章画面时, htmlArea 并不会自动启用;对于进阶使用者或者是不需要繁复变化的使用者来说,这确实是有效率且安全的作法。如果你真的有需要进入这个所见即所得的编辑模式时,请如图用鼠标按一下图案,接著文章编辑区马上就会进入「所见即所得」模式。

正常的文章编辑画面
图十一:这是正常的文章编辑画面,你可以看到编辑窗口里都是 HTML 源码。现在请用鼠标按一下图案以进入「所见即所得」模式。
进入了「所见即所得」模式后的文章编辑画面
图十二:进入了所见即所得模式后,你就再也看不到 HTML 源码了;反之你能看到的是这些 HTML 源码所会产生的效果,同时也出现了大量不同功能的按钮,帮助你编辑 HTML 文件。

在这个模式中,你可以使用下列不同的功能:

注意事项

请注意,由于尚未被清掉的程序瑕疵,当你完成编辑后请务必再次按下 按钮,切换到纯文字模式后再储存文章,否则你辛苦输入的内容将可能会付之一炬!

重建静态档案

「重建档案」是另一个先前没有特别提到的功能,然而有许多使用者不断在询问著「重建档案是甚么意思?」「我甚么时候需要重建档案?」因此我觉得有必要在这里花一点篇幅来说一说。

重建档案的原因

Movable Type 使用了一份数据库来储存各种你所输入的东西,包括像是网志组态、模版、文章、回响、引用通告等。这些讯息都是先存放到 Movable Type 所使用的数据库里,等到有需要的时候才会从数据库中被倒出来,而成为静态档案的一部份。这个「把数据从数据库中倒出来,制作成静态档案」的过程,就是所谓的「重建档案」

这么做有甚么好处呢?最大的好处是可以有极大的弹性,相同的信息内容可以很方便的出现在许多地方、或者是藏匿起来不予呈现。另一个相当重要的好处在于效率;随著日积月累,网志里的信息会越来越多,如果每次一有新的东西被加入,系统就要把所有的档案都整理一遍的话,将会花去难以计算的时间跟系统资源。然而如果我们先把数据扔进数据库的话,就祇需要在重建档案时,挑选有相关的信息片段一并重建就行了。这么一来,祇需要花费极少的资源,就能维持站台的更新。

其实还有另一个好处就是安全。因为你的数据是存放在数据库里,而不是袒胸露肚地摊在网页目录中,所以就算有人突破了你的防火墙、毁掉了你的网页静态档案,你依旧能够轻易地全部还原,而不会受到影响。

重建档案的时机

那么甚么情况下会需要重建档案呢?一般说来,在你做了下列这些事情后,就得重建档案:

上述这些变更完成时,都祇会更新你的数据库,却不会立即反映到网页目录里的静态档案,所以你得自己重建档案才行。至于实际重建档案的技巧,则请参考稍后的段落

自动重建档案

你或许会注意到,当你新增一篇文章时,系统就会自动地帮你套用所有相关的模版来重建可能会受到影响的静态页面。事实上,祇要你在文章编辑画面按下储存按钮,系统就会这样子来自动重建部分的档案。

这个设计相当地巧妙,也相当地有效。对于常常写新东西的使用者来说,他们毋须把时间花在按下「重建」按钮上,就能够在页面上不断新增文章;对于常常回头修改文章的使用者来说也是如此。无论你正在新增或修改文章,祇要一按下「储存」按钮,系统就会帮你把剩下来的事情做完。另一方面,当有访客留下回响或发出引用通告后,系统也会针对特定的文章如此重建;要不然你的站台页面可不会更新呢!

不仅如此,善用这个机制,我们甚至可以把维护站台所需的重建时间大幅缩短。且看接下来的这个段落

有效率地重建档案

在这个段落里,我们将条列许多重建档案的原则;越后面的原则越能帮你节省时间和系统资源,所以请仔细读下去吧:

  1. 祇有当你做了会影响所有页面的变更时,才重建所有的档案
    因为重建所有的档案将会花去最多时间及资源,所以除非你所做的变更会影响到所有的页面,例如修改了 CGI 脚本的路径、或变更了网志名称,否则不要轻易重建所有的档案。
  2. 当你修改了某个汇整模版后,就祇需要重建该汇整方式的档案即可
    在重建档案的对话窗里,有个下拉式选单可以选择祇重建分类汇整、按时汇整、或单篇汇整的档案。如果你祇修改了某一个汇整模版,那么其它的静态档案是不会被波及的,因此你祇需要重建该汇整方式的档案即可。
    这里有个例外,就是若你修改了汇整档案的档案名称模版的话,或许就得重建所有的档案了。
  3. 修改了任何索引模版后,可以祇以该模版来重建索引档案
    当你编辑任何索引模版时,也许会注意到在「储存」按钮旁边还有个「重建」按钮。这个按钮比左方工具列上的「重建」还要威力强大,因为它能够祇以你所编辑的这个模版来重建特定的某一个索引档案,毋须一口气重建全部的索引档案。别忘了,你得先储存了更新过的模版,才能按这个「重建」按钮喔!
  4. 修改了任何文章后,祇需要把文章再储存一遍即可
    没错,祇需要按下「储存」按钮,跟这一篇文章相关的单篇汇整页面、按时汇整页面、分类汇整页面、乃至于索引页面,都将会被更新。
  5. 修改、删除了任何回响或引用通告后,也祇需要把文章再储存一遍即可
    你应该会发现,当你储存了对任何回响或引用通告的变更后,就会跳回相关联的文章编辑画面。同样地,你也祇需要按下「储存」按钮,那么跟这一篇文章相关的单篇汇整页面、按时汇整页面、分类汇整页面、乃至于索引页面,也都将会被更新。
  6. 修改了任何「其它模版」后,完全毋须重建任何档案
    举凡回响清单模版回响预览模版回响出错模版、以及引用清单模版都是当读者点击了特定链接后,才会用于生成动态页面的,所以你根本不需要手动加以重建。而弹出已上传图片模版套用的时机则祇有发生在上传了图片的时候,所以这个模版所建立出来的静态档案也不是重建档案系统所能干涉的,就算你重建所有档案也没有用。

管理黑名单

随著网志日益流行,渐渐地有不肖之徒开始到别人的网志上留下回响或引用通告;他们所留下的文字多半言不及义、或与原来的文章没有丝毫瓜葛,他们的目的在于留下生效的超链接,试图拉高自己站台的 Google 评比 (Google Rank) ,顺便看会不会有人误闯贼门。

这种东西我们称做「回响垃圾 (Comment Spam)」,已成为继垃圾信 (Spam) 后的严重问题。原本的 Movable Type 祇能让你透过禁用 IP 的方式,以抵御来自特定位置的攻击。但是这个方法毕竟过于被动,而且这些混蛋总是有办法换用不同的 IP ;因此 Jay Allen 发展了一套 MT-Blacklist 外挂模块,透过黑名单比对回响内容,主动封杀可疑的回响垃圾。

现在这个外挂模块也成为 Movable Type 的 Windows 安装档内的预设模块了。你祇需要如图在网志主选单里点击「设定黑名单」的链接,就可以予以启用或组态。

在网志主选单里点击「设定黑名单」链接
图十三:在网志主选单里点击「设定黑名单」的链接。
MT-Blacklist 的预设画面
图十四: MT-Blacklist 的预设画面,你可以看到目前已在黑名单中的字符串跟正规表示式。

启用黑名单

虽然现在会预设就帮你把 MT-Blacklist 装好,但是基于兼容性考量,一开始时是不会启用的,你得自己启用才行。别担心,这并不难;请先如图按下「 Configure 」按钮,在第一个选项选择「 Yes 」,然后把画面卷到最下方,把「 Automatic Blacklist Publishing 」的输出档名改成「 ./blacklist.txt 」(否则在 Windows 上会出问题),最后按下「 Save Configuration 」即可。

按下「 Configure 」按钮
图十五:一开始 MT-Blacklist 尚未启用,请按下选单里的「 Configure 」按钮。
在第一个选项选择「 Yes 」
图十六:在 MT-Blacklist 的主开关选择「 Yes 」来启用。
把「 Automatic Blacklist Publishing 」的输出档名改成「 ./blacklist.txt 」,然后按下「 Save Configuration 」
图十七:先把屏幕卷到最底下,接著把「 Automatic Blacklist Publishing 」的输出档名改成「 ./blacklist.txt 」,最后按下「 Save Configuration 」来储存 MT-Blacklist 组态设定。
MT-Blacklist 已启用
图十八:现在 MT-Blacklist 已经启用了。

当然这里还有许多细节可以调校,但是我在此不打算赘述(不然就会变成另一章了),请有兴趣的朋友自己啃线上说明吧!

更新黑名单

除了预设把 MT-Blacklist 装好之外,这里还预先附上了一份黑名单,让你能够立即生效。但是你还是应该随时注意有没有更新的黑名单,才能时时抵御最新的垃圾。

你可以订阅 MT-Blacklist 交换所 RSS Feed (http://www.jayallen.org/comment_spam/feeds/blacklist-changes.rdfhttp://www.jayallen.org/comment_spam/feeds/blacklist-changes.xml) 来监视任何的黑名单更新;最新的黑名单则会发布在 http://www.jayallen.org/comment_spam/blacklist.txt ,你祇需要如图把整个档案的内容复制起来,然后贴进「 Add 」画面中的「 Import blacklist 」字段中,最后按下「 Import entries 」按钮即可。

按下 MT-Blacklist 选单里的「 Add 」按钮
图十九:在 MT-Blacklist 画面中,按下选单上的「 Add 」按钮,准备汇入最新的黑名单。
点击「 updated list 」链接
图二十:要取得最新的黑名单的话,祇需要从这个画面里点击「 updated list 」即可。
「全选」黑名单
图二十一:当浏览器开启了最新的黑名单后,请从编辑选单(或用任何方法)把内容给全选起来。
从鼠标右键「复制」黑名单内容
图二十二:全选了黑名单后,请按下鼠标右键然后选「复制」,把所有的内容给复制起来。
以鼠标右键「贴上」到汇入字段里
图二十三:回到 MT-Blacklist 的「 Add 」页面,在「 Import blacklist 」字段里按鼠标右键,选「贴上」来把刚刚复制的黑名单贴进去。
按下「 Import entries 」按钮
图二十四:最后别忘了按下「 Import entries 」按钮,就可以更新你的黑名单了。

再次强调,这个外挂模块的功能远比我们在此所介绍的更为强大,不过碍于篇幅,我们就不多加描述了,请有兴趣的朋友自行研究、阅读线上文件。


保留部分权利AttributionShare Alike