/* -- sidebar style -- */ .sidebar .widget { margin-top: 1.3em; margin-right: 0; margin-bottom: 0.5em; margin-left: 0; } .sidebar h2 { font-size: 1.3em; } .sidebar dl { margin-top: 0; margin-right: 0; margin-bottom: 10px; margin-left: 0; } .sidebar ul { list-style: none; margin: 0; padding: 0; } .sidebar li { padding-bottom: 5px; line-height: 1 } .main .widget .clear { clear: both; } /* -- sidebar style -- */ #footer p { margin: 0; padding: 12px 8px; font-size: 0.9em; } .profile-textblock { margin-left: 0; clear: both; } .profile-img { float: left; margin-top: 0; margin-right: 10px; margin-bottom: 5px; margin-left: 0; border: 1px solid #7C78B5; padding: 4px; } /** Page structure tweaks for layout editor wireframe */ body#layout #header-wrapper { margin-top: 0; } body#layout #main-wrapper { padding:0; } -->

2009-04-16

Movable Type4(MT4)自動再構築の方法 エックスサーバーの場合

Movable Type4(MT4)自動再構築の方法ですが、
私の場合、エックスサーバーなので、
Cronの設定でなんとかなるんじゃないかと。

cronとは、指定時間に指定コマンド(プログラム)を自動的に実行させる機能です。

エックスサーバーの場合だけかどうかは知りませんが、
サーバーの管理画面上で指定すればCronの結果をメールで送ってくれます。

「Cron Daemon」という、タイトルからしていかにも「失敗しました」的なメールが来た、
ということは、うまくいってない。(-"-)
サイトを確認しても、更新されていません。


で、メールの結果とサイトを見ながらあーでもない、こーでもないと、
立て続けにCronをテストしたら・・・。

4回でメールが止まったし。(^^A)

たぶん、サーバー側でなにかの機能が働いたものと思うのですが。
数分間に何回もCron動かすな!ボケ!とか、そんなんがあるんじゃないかな~(ー"ー )チッ
それもさっぱりわからないけど。

深夜の3時頃とかの、サーバーに最も負荷のかからないであろう時間帯に、毎日再構築されるように指定してみて、その日は寝ることにしました。

翌日、cronのお知らせメールは来ない・・・(-"-)

「あー、結局失敗したのかな~?」とガッカリしつつ、サイトを確認すると、ちゃんと自動再構築が働いて、更新されてるみたい。

メインページの他サイトから取得したRSSは新しい情報が表示されていて、
ソースを見ると、タイムスタンプもちゃんと書き変わってるし。

なんでだろう( ̄◇ ̄;)???成功するとメールは来ないのかな???
その辺の説明、エックスサーバーのヘルプには書いてありませんでした。

っつーことは、一応当初の目的は達成できてるんだろうか・・・?

私がやりたい事は、

他ブログやニュースサイトなどの更新情報をトップページ(メインページ)に表示する
↓↓↓
最新の情報を表示させるために、トップページ(メインページ)を毎日1回自動再構築をさせる

なので、自動再構築させるのはメインページだけ。

再構築用の「mt-rebuild.pl」を仕込んで、Cronで動かしてみることにしました。

まずは以下より、プラグインを取得。

mt-rebuild / Code / Appnel Solutions(TypeKeyでログインが必要です。)

解凍して、「mt-rebuild.pl」というファイルをそのまま、MTをインストールしたフォルダの直下にアップロードします。

※pluginsフォルダ内ではなく、mt.cgiなんかが入っているところ。

「mt-rebuild.pl」の属性(パーミッション)を755に変更。(700でもいいのかもしれない)

これで再構築プラグインの設置は完了。

次はサーバーの管理画面からCronで「いつ、どのテンプレートを再構築させる」というのを指定します。
エックスサーバーでのCron指定方法は以下の通りです。

管理画面にログインしたら、MTをインストールしたドメインのサーバーパネルを開き、「Cron設定」をクリック。
「Cronの追加」で、毎日1回の更新なので、時間の設定は以下のように指定しました。

分 30
時間 3
日 *
月 *
曜日 *

これで、毎日夜中の3時半にCronが動くはず。 日、月、曜日は関係ないので、*(半角アスタリスク)を入力。

問題はコマンドです。

ここがなんだかいまひとつだったみたいで、いろいろ検索をかけて調べたり試したりした挙句にうまく行ったのが以下のコマンドでした。

コマンド

cd /home/【サーバーID】/【ドメイン名】/public_html/【MTをインストールしたフォルダ名】;/home/【サーバーID】/【ドメイン名】/public_html/【MTをインストールしたフォルダ名】/mt-rebuild.pl -mode='index' -blog_id=【更新させたいブログのID番号】 -template='MainIndex'

最初の cd の後には、半角スペースが入っているので要注意です。

【更新させたいブログのID番号】は、MTの管理画面でオンマウスにするとわかります。

最後の -template='MainIndex' ここがまた、わけのわからないところなんですが、
「MainIndex」は、更新させたいテンプレート名です。

MTの管理上でのテンプレート名は普通「メインページ」ですよね。
ただ、なぜかそのままだとCron指定できなくてはじかれました。

MTのテンプレート名を、「メインページ」から「MainIndex」に変更してみたところ、これで動いたみたいです。

コメント の部分は、自分で管理しやすいように適当に。


「mt-rebuild.pl」は、MT4だと動かないという情報も見かけましたが、動いてるみたい。

うーん、一応できたってことになるのかな~???
もうね、これでいいや。

一応動いてるみたいだから・・・、これ以上いじるのやめておこうと思います。

エックスサーバーは、動作も軽く、安定していて、お値段の割に機能が充実しているので、おススメのサーバーです。

0 コメント: