●Xserverでcronを使って指定日投稿うまくできますか? 3
以前の記事「Xserverでcronを使って指定日投稿うまくできますか? 2」の続編です。
以前のの記事で述べたXserverでの私の応急処置法を今回紹介します。
「長くなるので、続きはまた次の記事で^^;」と長ーーく引っ張ってしまいましたが、今回が最終回です^^
今回紹介する方法は、cronの使えるサーバーを一つ使って、別の(あるいは同じ)サーバー(複数でcronが使えなくてもよい)でMovable Type(MT)の指定日投稿を行う方法です。
この方法を使えば、
- cronの使えるサーバーを一つ用意しておけばcronの使えないサーバーでもMTで指定日投稿が可能
- Xserverで通常のやり方でcronを使ってうまく指定日投稿できかった場合でも指定日投稿が可能(少なくとも私はこのやり方で指定日投稿できています。)
2種類のサーバーが出てくるので混乱しないように以下の用語を使うことにします。
指定日投稿を行いたいサーバー: MTがインストールされていてMTの指定日投稿を行いたいサーバー(複数でもよい)
cronの使えるサーバー: cronの使えるサーバー。このサーバーのcronを使って指定日投稿の処理の開始処理を行います。上の指定日投稿を行いたいサーバーと同じサーバーでも構いません。
では、方法を説明します。
まず、藤本さんのブログThe blog of H.Fujimotoの「cronを使わずに(ほぼ)指定日投稿する」という記事の「必要なファイルのダウンロードと解凍」を行います。
次にその記事中の「ファイルのアップロード」を行います。
ただし、mt-period.cgiとperiod-last.txtのみを指定日投稿を行いたいサーバーにアップロードします。
ファイルの属性はXserverの場合、それぞれ700,644にしておきます。
指定日投稿を行いたいサーバーが2つ以上ある場合、そのすべてのサーバーにmt-period.cgiとperiod-last.txtをアップロードしておきます。
mt-period.cgiのperlのパスの設定は、指定日投稿を行いたいサーバーのそれぞれのパスに合わせておきます。
次にcron-mt-period.txtを自分のPCに保存して下さい。
保存したファイルをcron-mt-period.plという名前に変更します。
ダウンロードしたcron-mt-period.plをエディタを使って、以下のように自分の環境に合わせて変更します。
1行目の/usr/bin/perlをcronの使えるのサーバーのperlのパスにあわせて変更してください。Xserverをお使いの場合、このままでよいです。
3行目'http://example.com/cgi/mt/mt-period.cgi'を先ほどアップロードしたmt-period.cgiのURLに変更してください。また、2つ以上のサーバーで指定日投稿を行うためにmt-period.cgiを複数のサーバーにアップロードした場合は、そのすべてのURLを,(半角のコンマ)で区切ってすべて書きます。
変更したcron-mt-period.plをcronの使えるサーバーにアップロードしてください。
アップロード先ですが、スクリプトを動かすことのできる場所ならばどこでも構いませんが、Xserverの場合は
/home/自分のサーバーID/.../public_html
あたりにおけばよいと思います。ファイルの属性は700です。
最後にcronの設定をします。
15分に一回、アップロードしたcron-mt-period.plが実行されるような設定にしておけばよいと思います。
これで指定日投稿できるようになるはずです。
