Windows XP 自宅サーバで FastCGI を利用する for Movable Type 3.34
Windows XP 自宅サーバへの FastCGI モジュールのインストールおよび、Movable Type 3.34 を FastCGI アプリケーションとして利用する方法をご紹介します。
Movable Type に FastCGI を適用する記事「Running Movable Type Under FastCGI」には、サーバへの FastCGI モジュールのインストール手順が掲載されておらず、Windows + FastCGI の設定方法についても(日本の)ウェブ上で詳細に解説された記事が少ないようです。
ということで、アプリケーションの実装やサーバのチューニング等、記述不足な部分もありますが、Apache HTTP サーバへの FastCGI インストール手順、および Movable Type 3.34 を FastCGI を利用して動作させる手順を本エントリーでまとめてみました。
久しぶりの自宅サーバネタです。
なお、Linux(Fedora Core 6)版での FastCGI + Movable Type 3.34 導入手順が「The blog of H.Fujimoto:Movable Type 3.34をFastCGIで動作させる手順」で紹介されています。
Windows XP での動作確認環境は下記の通りです。
- Apache 2.0
- Active Perl 5.8.8
- MySQL 5.0
以下設定手順です。通常の自宅サーバの設定がすでに行われていることを前提に書いてます。
ちなみに試してみたところ、Movable Type の管理画面の操作が体感で 3 倍以上早くなりました。是非通常の運用環境でも使ってみたいところです。
1.FastCGI モジュールのダウンロード
HTTP サーバで FastCGI を利用可能にするため、Apache HTTP サーバに読み込ませるためのモジュールをダウンロードします。
FastCGI のトップページすぐ下にある Servers という項目の Apache の current: download のリンク(ここに最新版がある)をクリックします(下)。
そして投稿時点では最新の、
mod_fastcgi-2.4.2-AP20.dll
のリンクをクリックして FastCGI モジュールをダウンロードします。
この mod_fastcgi-2.4.2-AP20.dll
というファイル名は、前半の数字が mod_fast 自体のバージョン、後半の数字が Apache のバージョンみたいですので、Apache 1.3 系を使用している場合は同じページの mod_fastcgi-2.4.2-AP13.dll
を使用すると思います。
また過去のモジュールは、同じページの old/
をクリックしたところにあります。
ダウンロードした mod_fastcgi-2.4.2-AP20.dll
を mod_fastcgi.dll
にリネームし、Apache の modules
フォルダに移動します。リネームしない場合は、次項の httpd.conf
の LoadModule
ディレクティブでファイル名を合わせてください。
参考:
- Ruby on Rails:Fast CGI and Apache2 for Windows XP
- Ruby on Rails:Fast CGI and Apache2 for Windows without VirtualHosts
2.httpd.conf
修正
次に、ダウンロードした FastCGI モジュールを Apache で読み込む設定と .fcgi
という拡張子のファイルで FastCGI を利用する設定を行います。
httpd.conf
を任意のエディタで開き、下記の
#LoadModule rewrite_module modules/mod_rewrite.so
のコメント文字を削除して、
LoadModule rewrite_module modules/mod_rewrite.so
にします。
また、その下辺りに
LoadModule fastcgi_module modules/mod_fastcgi.dll
を新しく追加します。
さらに
AddHandler fastcgi-script .fcgi
を <Directory "
[ドキュメントルート]">
~</Directory>
の中、あるいは他の AddHandler
ディレクティブの設定と同じ辺りに追加します。
なお、通常の CGI が実行できる状態(Options
ディレクティブに ExecCGI
の追加)を前提に話を進めておりますので、その辺りの設定は他のサイトを参考に設定してください。
動作確認するのであれば、最低限この設定で良いみたいですが、実際に運用する場合は FastCgiConfig
ディレクティブ等を追加してチューニングする必要があります。そうしないと(多分) FastCGI で Apache のメモリ(プロセス)が大量に消費される可能性があります。
参考:
3.Perl モジュールをインストールする
ここでは Perl プログラム(ここでは Movable Type)から FastCGI を利用するための環境を作ります。
Perl で FastCGI を利用するには、FCGI と CGI::Fast というモジュールが必要です。
説明は省略しますが、ActivePerl 5.8.8 の PPM version 4 から GUI がデフォルトで起動されます。下の説明ではコマンドラインから直接ダウンロードしていますが、GUI の場合は下記の記事を参考に予め修正した方がいいでしょう(Perl のバージョンが低ければ問題ないかもしれません)。
参考:
MS-DOS 画面より下記のコマンドを入力します。単に ppm と入力すれば GUI を利用してダウンロードできます。
C:¥>ppm install FCGI
Downloading ActiveState Package Repository packlist...done
Downloading ActiveState Package Repository ABI PPD...not modified
Downloading ActiveState Package Repository ACH-Builder PPD...not modified
Downloading ActiveState Package Repository ACH-Generator PPD...not modified
:
(延々と続く)
:
Downloading ActiveState Package Repository xmlrpc-pureperl PPD...not modified
Downloading ActiveState Package Repository xslt-parser PPD...not modified
Downloading ActiveState Package Repository your PPD...not modified
Downloading FCGI-0.67...done
Unpacking FCGI-0.67...done
Generating HTML for FCGI-0.67...done
Installing to site area...done
6 files installed
参考までに、perl 5.8.7.815 では下記のようになりました。
C:¥>ppm install FCGI
====================
Install 'FCGI' version 0.67 in ActivePerl 5.8.7.815.
====================
Installing C:\usr\site\lib\FCGI.pm
Installing C:\usr\site\lib\auto\FCGI\FCGI.bs
Installing C:\usr\site\lib\auto\FCGI\FCGI.dll
Installing C:\usr\site\lib\auto\FCGI\FCGI.exp
Installing C:\usr\site\lib\auto\FCGI\FCGI.lib
Installing C:\usr\html\arch\FCGI.html
Installing C:\usr\html\site\lib\FCGI.html
Files found in blib\arch: installing files in blib\lib into architecture dependent library tree
Successfully installed FCGI version 0.67 in ActivePerl 5.8.7.815.
CGI:Fast はデフォルトでインストールされている(多分 ¥usr¥lib¥CGI¥Fast.pm
)ので、インストール不要です。というか、ppm コマンドでは取得できません。
4.Movable Type の FastCGI 用ファイル作成
ここからは FastCGI アプリケーション側の設定です。
Movable Type インストールディレクトリにある下記の CGI ファイルをコピーして、.fcgi
にリネームします(単にリネームでもOK)。
mt.cgi
→mt.fcgi
mt-comments.cgi
→mt-comments.fcgi
mt-tb.cgi
→mt-tb.fcgi
mt-view.cgi
→mt-view.fcgi
mt-search.cgi
→mt-search.fcgi
5.Movable Type 設定ファイル修正
mt-config.cgi
を任意のエディタで開き、下記を追加します。
AdminScript mt.fcgi
CommentScript mt-comments.fcgi
TrackbackScript mt-tb.fcgi
SearchScript mt-search.fcgi
ViewScript mt-view.fcgi
以上です。
Apache を再起動し、正常に立ち上がれば OK です。そしてブラウザから mt.fcgi
にアクセスしてみてください。
参考:
- Ogawa::Memoranda:MT 3.2 on Apache + FastCGI
- akiyan.com:Apache2.2.3(FreeBSD ports)環境でMT3.2-ja-2をFastCGI化する
- XAMPP for Windows で FastCGI を利用する
- メモリ増設
- サーバ不具合のお詫び(2005/10/23)
- サーバ不具合のお詫び(2005/09/06)
- サーバの不具合
- サーバ停止のお詫び
- CPU2次キャッシュサイズ変更
- サーバ不具合
- サーバ停止します
- サーバ更改作業まとめ
- サーバ更改
- 自宅サーバ再構築(その2)
- 自宅サーバ再構築(その1)
- 自宅サーバの電気代
- blogの再構築時間
≫ MTを3.34(日本語版 )にアップグレードしました from KIKI :: GOLFとゴルフを楽しむページ
Six Apart - Movable Type News: Movable T... [続きを読む]
≫ FastCGIを導入 from こんなのアリ?
Movable Type3.34になって「FastCGI」が利用できるように... [続きを読む]