MovableType 远程发布插件 LFTP

一般的用户,都是在服务器本地安装好 MovableType,然后发布在本地,但有些用户可能为了更好地集中管理,只用一个 MovableType ,借助其可以创建多个博客和静态发布的功能,把博客远程发布到远程服务器上,做到后台分离。记得 Google Blogger 在很久以前,也可以通过 FTP 远程发布。

今天给大家介绍一款 MovableType 插件 LFTP,可以实现远程发布。配合 MTRelativeURL 插件,解决掉绝对链接的问题,使用起来更爽,本地也可以绑定域名。

插件下载地址:https://github.com/tokiwatch/LFTP

准备工作

1、在本地服务器上安装 LFTP。

如果你使用的是 CentOS,可以直接使用 yum 进行安装:

yum install lftp

2、远程服务器的 SFTP 信息

就是需要一个可以远程登录服务器的 SSH 账户。

插件的使用

1、安装

安装非常简单,安装在 plugins 目录下即可,进入博客,Tools --> Plugins 找到 LFTP,对其进行配置,并且启用,启用之后就可以在 Tools 那栏看到 lftp Upload Blog 了。配置的基本情况如下:

lftp 配置

注意的是, LFTP local_dir 是以 mt.cgi 文件的目录为当前目录,所以要进行目录切换。

Dry run 是模拟上传,如果勾选,点击 Do Upload 的时候,不会真的上传,会列出给你看,什么东西会被上传或者删除等。

2、深入研究

打开插件,可以看到插件工作的基本原理,如果你对 LFTP 比较熟悉,可以自己修改一些参数。从插件中可以看到执行的命令大概如下:

$mirror_cmd = "mirror --reverse --only-newer --delete --no-perms --no-umask $mirror_opt";

后来发现,其实可以自己建一个 cron 定时执行任务,使用 LFTP mirror 定时进行远程发布,和 rsync 差不多,并不需要插件。

总结

LFTP 实现了集中管理,可以在本地建安装一个 MovableType,发布到远程服务器,但是没了自带的搜索和评论功能,搜索可以借助搜索引擎实现,评论也可以采用 Disqus 等实现。

如果需要同步的文件比较多,可能会造成超时的现象,所以不是很适合很多博文的网站。如果有很多需要同步的,建议使用命令行运行 lftp 或者 rsync 进行同步。