PubSubHubbub の Movable Type 用プラグインを導入してみた
Google など検索エンジンにちょっぱやで新記事をインデックスして貰う方法の一つに、PubSubHubBub で更新情報を PUSH するというのがあります。
ぱぶさぶはばぶ、と読みます。ひらがなで書いても読みにくいですね。
ともあれ、これに対応してみます。
設定方法
1. MT-PubSubHubbub プラグインを、MTのプラグインディレクトリに投入
miyagawa/MT-PubSubHubbub にあるものです。2009年にアップデートされたっきりですが、大丈夫です。MT6で動いたから。
右下の [Download ZIP] ボタンの先のURLをコピー。
まずは、ターミナルからインスタンスにログイン。 参照:Mac の Terminal で、EC2 のインスタンスにログインする方法 - 非エンジニアがAWSでMT6のブログをセットアップしてみた日記
どこかのディレクトリに、wget でプラグインをダウンロードしてきて unzip。
$ wget https://github.com/miyagawa/MT-PubSubHubbub/archive/master.zip
$ unzip master.zip
$ ls
MT-PubSubHubbub-master master.zip
./MT-PubSubHubbub-master/plugins に移動して、chown でPubSubHubBub/ 以下すべてオーナーをwww:wwwに変更します。
で、/app/movabletype/plugins に mv。
作業ディレクトリに残った不要なファイルは任意で片付けましょう。
$ cd ./MT-PubSubHubbub-master/plugins
$ ll
drwxrwxr-x 4 ec2-user ec2-user 4096 2月 26 00:49 2010 PubSubHubBub
$ sudo chown -R www:www PubSubHubBub/
$ ll
drwxrwxr-x 4 www www 4096 2月 26 00:49 2010 PubSubHubBub
$ sudo mv PubSubHubBub/ /app/movabletype/plugins/PubSubHubBub2
$ pwd
/app/movabletype/plugins
$ ls
FacebookCommenters GoogleAnalytics MultiBlog StyleCatcher WXRImporter mixiComment
FormattedText Loupe PubSubHubBub Textile WidgetManager spamlookup
FormattedTextForTinyMCE Markdown SmartphoneOption TinyMCE feeds-app-lite
これで、プラグインディレクトリへの配置は完了
2. MT を再起動し、プラグインを設定する
$ sudo /etc/init.d/movabletype restart
Stopping movabletype: [ OK ]
Starting movabletype: [ OK ]
こうすると、[ツール] - [プラグイン] に PubSubHubBub のプラグインが出てきます。
PubSubHubbub Hub(s) に、http://pubsubhubbub.appspot.com/ を追加します。
3. ATOM フィードに 1 行追加
Feed - Recent Entries に <$MTPubSubHubbubLinks$> を追加します。
これで、再構築したら完成!
動作確認
「記事公開後、ちょっぱやでGoogleで検索できるようになった!」と言えるのがベストなのですが、まあ記事公開直後にググっても出てきませんね。Googleでの取り扱いについては、Google マスターツールをさきほど仕掛けたので、今後の記事でも引き続き検証します。
とりあえず今は、記事公開後に、Hub からちゃんとリクエストが飛んできているかを、nginx のアクセスログで確認しました。
$ cat /data/logs/nginx/access.log | grep pubsub | tail -n 1
[07/Jan/2014:12:32:47 +0000] "GET /atom.xml HTTP/1.1" 200 18172 "-" "AppEngine-Google; (+http://code.google.com/appengine; appid: s~pubsubhubbub-hrd)" "-"
記事更新三秒後にそれっぽいリクエストが来てますね :)
うむ。きょうはこのくらいにしといてやる。