Webサーバーでもメールサーバーでも、基本的にサーバーというものは自宅サーバーで運用するものという認識でいたこの数年間ですが、ここに来てその認識が変わってきました。
というのも、専用でも格安共用でも、とにかくレンサバの機能と容量がアップして、同時に価格が安くなってきたということが背景にあります。
そもそも、なぜ私がサーバーは自分で立てるようになったかといえば、ひとえにレンサバが高額で少容量だったからという理由があります。この前提が最近は急激に崩れてきているんですね。
とゆーわけで、近々、我が家の建て替えという大イベントも控えていることですし、いっそのことレンサバに移行してみるかということで選んだのがさくらのレンタルサーバー。安いんですよねえ、これがまた。とくに、私のように複数ドメインを所有しているユーザーにはとてもありがたい存在。
で、ここにMT4.1を入れてみたのはいいのですが、やっぱり以前のようにPHP化してみたいなあという欲望がむくむくと頭をもたげてきまして。
PHP化の手順そのものは、本来であればきわめて簡単。
ところが、さくらでこれをやってもなぜかInternalServerErrorになってしまいます。
なんでだろうと思って調べてみると、どうやらパーミッションの問題のようです。
さくらのレンサバではPHPはCGIとして動作し、ファイルもディレクトリもパーミッションは755もしくは705である必要があるとのこと(一般的には755のようですね)。
試しにMTで生成されたindex.phpのパーミッションを755に変更してみると、確かにちゃんと表示されます。しかし、再構築の度にすべてのファイルを手動でパーミッション変更するわけにもいきません。
そのあたりの対応方法はMT側にもきちんと用意されていました。
環境変数リファレンスにも載っているのですが、
ひとつはcgiwrap下での実行に際してのパーミッション変更
http://www.movabletype.jp/cgi-bin/mt4/mt-search.cgi?search=cgiwrap&IncludeBlogs=10
もうひとつは、デフォルトパーミッションの設定
http://www.movabletype.jp/cgi-bin/mt4/mt-search.cgi?search=Perms&IncludeBlogs=10
ということになります。
具体的には、/mt/mt-config,cgi の最後あたりに
注意点としてはすでに作成されたディレクトリのパーミッションは変更されないということ。画像を保存したディレクトリなども該当しますから、ここは手動で変更するなりして対応しましょう。
あと、細かいところとしては、うまくPHP化ができたら既存のHTMLファイルは削除するとか、ディレクトリへのアクセスで表示するデフォルトページの最上位にindex.phpを持ってくるとか、そのへんも対応しておけば問題なくPHP化ができるはず。
というのも、専用でも格安共用でも、とにかくレンサバの機能と容量がアップして、同時に価格が安くなってきたということが背景にあります。
そもそも、なぜ私がサーバーは自分で立てるようになったかといえば、ひとえにレンサバが高額で少容量だったからという理由があります。この前提が最近は急激に崩れてきているんですね。
とゆーわけで、近々、我が家の建て替えという大イベントも控えていることですし、いっそのことレンサバに移行してみるかということで選んだのがさくらのレンタルサーバー。安いんですよねえ、これがまた。とくに、私のように複数ドメインを所有しているユーザーにはとてもありがたい存在。
で、ここにMT4.1を入れてみたのはいいのですが、やっぱり以前のようにPHP化してみたいなあという欲望がむくむくと頭をもたげてきまして。
PHP化の手順そのものは、本来であればきわめて簡単。
- MTの管理画面から「設定」>「ブログの設定」>「公開設定」を選び、アーカイブの拡張子をphpにする
- 同じく管理画面の「デザイン」>「テンプレート」>「インデックステンプレート」>「メインページ」を選び、出力ファイル名を「index.php」にする
ところが、さくらでこれをやってもなぜかInternalServerErrorになってしまいます。
なんでだろうと思って調べてみると、どうやらパーミッションの問題のようです。
さくらのレンサバではPHPはCGIとして動作し、ファイルもディレクトリもパーミッションは755もしくは705である必要があるとのこと(一般的には755のようですね)。
試しにMTで生成されたindex.phpのパーミッションを755に変更してみると、確かにちゃんと表示されます。しかし、再構築の度にすべてのファイルを手動でパーミッション変更するわけにもいきません。
そのあたりの対応方法はMT側にもきちんと用意されていました。
環境変数リファレンスにも載っているのですが、
ひとつはcgiwrap下での実行に際してのパーミッション変更
http://www.movabletype.jp/cgi-bin/mt4/mt-search.cgi?search=cgiwrap&IncludeBlogs=10
もうひとつは、デフォルトパーミッションの設定
http://www.movabletype.jp/cgi-bin/mt4/mt-search.cgi?search=Perms&IncludeBlogs=10
ということになります。
具体的には、/mt/mt-config,cgi の最後あたりに
HTMLUmask 0022という項目を加えればOKです。
DirUmask 0022
UploadUmask 0022
DBUmask 0022
HTMLPerms 0777
UploadPerms 0777
注意点としてはすでに作成されたディレクトリのパーミッションは変更されないということ。画像を保存したディレクトリなども該当しますから、ここは手動で変更するなりして対応しましょう。
あと、細かいところとしては、うまくPHP化ができたら既存のHTMLファイルは削除するとか、ディレクトリへのアクセスで表示するデフォルトページの最上位にindex.phpを持ってくるとか、そのへんも対応しておけば問題なくPHP化ができるはず。

