Movable Typeで組み込みPHPを動かすまで(xServer編)
今回は、自作のTwitter読み込みツールをMovable Typeのブログに導入したときに、発生した数々の問題をどうクリアして行ったかを書いてみます。
ちなみに、サーバはレンタルサーバのxServerです。
まず、組み込みPHPコードをMovable Typeにテンプレートに書くのはよかったのですが、
そのページはMovable Typeが吐き出すHTML拡張子のファイルであったため、
以下のように、.htaccessを編集し「htmlの拡張子のままでもPHPとして動作させる」という以下の一行を書きます。。
AddType application/x-httpd-php .html
ここで、テンプレートを保存して再構築させると、なぜか、ファイルのダウンロードのダイアログが開きます。
原因はxServerのPHPのヴァージョンにあったようで、PHP4ではなく、PHP5にしてあると稼働します。
早速、エックスサーバーの管理画面からPHP5に設定してやります。
この作業によって、xServerが.htaccessを書き換えますので、再度見てみると、
AddHandler x-httpd-php5 .php .phps
の1行が追加されています。
なので、最初の対応とあわせて、最終的に.htaccessが以下のようになるように書き換えます。
AddHandler x-httpd-php5 .php .phps .html
AddType application/x-httpd-php .html
これでいけたかな?とページをリロードすると今度は、500エラーが発生してしまいました。エラー内容は以下。
File "/home/*****/******/public_html/index.html" is writeable by group
これは、Movable Typeで作られたファイルはデフォルトでパーミッションを「666」に設定していたために、xServerが書き込み権限のあるファイルであるとエラーをはいているのが原因でした。
そこで、オーナー以外は読み取り専用とする「644」に変更するべく、今度はMovable Typeの「mt-config.cgi」を以下のように編集します。
DBUmask 0022
HTMLUmask 0022
UploadUmask 0022
DirUmask 0022
これで、完了です。
最後は忘れずにMovable Typeからサイトの再構築をして、全てのファイルのパーミッションを変更しておきます。
こんな、Specificな構築内容がさて、誰かの役にたつのかな・・・(笑)
最後に、今回参考になったサイトです。
- EarlGrey Tearoom: 埋め込みPHPで「昨日今日カウンタ - http://egt.tpot.tk/a/000271.html
- エックスサーバー Archive at まとめたブログ: WordPress - http://wordpress.matometa.net/category/xserver
- MovableTypeを活用して脱初心者!: パーミッションの設定 - http://website.kodakara.com/archives/2006/10/post_7.php