CORESERVER / XREA にcron ジョブ(Movable Type 4 の run-periodic-tasks)を設定する
CORESERVER や XREA では crontab コマンドでは cron を設定できない(一瞬できますが削除されます)ので、管理画面より設定します。
ここではMovable Type 4 の run-periodic-tasks を例に手順を紹介します。
1.シェルスクリプトの作成
「シェルスクリプト」とは、Linux上のコマンドを制御するプログラミング言語が記述されたファイルを指します。
まず、以下のような内容のシェルスクリプトを任意のテキストエディタで作成します。
#!/bin/sh
cd /virtual/***/public_html/mt
/usr/bin/perl ./tools/run-periodic-tasks
exit
2行目の赤色の部分、*** はユーザによって異なります。また、「mt」は Movable Type のアプリケーションディレクトリ(mt.cgi があるところ)を指定してください。
1行目と3行目、4行目の記述内容は固定です。
この内容を cron.sh というファイル名で保存します。ファイルの名前は任意ですが、拡張子は必ず .sh にしてください。
なお改行コードは必ずLFで保存してください。Windows のメモ帳では改行コードは CR+LF になってしまうので、他のフリーのエディタを使いましょう。
2.ファイルのアップロード
FTPツールで cron.sh をアップロードします。ここではユーザディレクトリ(public_html のひとつ上の階層)にアップロードします。
アップロード後、cron.sh のパーミッションを 705 に変更してください。
3.cron ジョブの設定
CORESERVERの管理画面ログイン
「CORESERVERアカウントの登録・管理・購入」をクリック
「サーバー設定」をクリック。
「入室」をクリック(ブラウザによっては自動で画面遷移します)
サイドメニューの「CRONジョブ」をクリック
アップロードしたファイルをCRON ジョブに登録します(画面から切れてますが、曜日の部分も * を設定)
これは毎時0分に cron.sh を実行する設定です。数字は時間、* は全ての期間に対応する意味です。「時」に * をつけると「毎時実行する」という意味になります。
設定後、「保存」をクリックしてください。
4.エラーメールを送信しない
cron ジョブにエラーがあると、登録しているメールアドレスにエラーメールが送信されます。このエラーメールの送信を行いたくない場合は、シェルファイル名の後に「 >/dev/null 2>&1」を付けます。
最初はこの設定を行わず、エラーメールが送信されないことを確認してからの方がいいでしょう。
5.その他
CORESERVER での cron ジョブ実行については以下の条件があります。
- ジョブの最大実行時間は3分です。それを超えるものは強制停止されます
- CORESERVER でのジョブの実行間隔は最短で1時間に1回です
- 削除する場合は、「/virtual/***/~」を空にし保存して下さい
- ジョブの負荷はCGI負荷として加算されます
2008.09.22
XREA を追加しました。