PowerCMS™
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[新着情報] PHP 8.2 に対応した PowerCMS 6.5 の提供を開始 を追加しました。
[新着情報] PowerCMSクラウド の月額費用を、2024年7月1日より価格改定します を追加しました。
[新着情報] アルファサードのゴールデンウィーク休業について を追加しました。

PowerCMS ブログ

ホーム > PowerCMS ブログ > 技術情報 > Windows環境にMovable Typeを設置する (Tips)

2009年03月10日

Windows環境にMovable Typeを設置する (Tips)

アルファサード有限会社の持田です。私は主に Power CMS for MT のインストールやサーバー設定関連の情報をお届けします。

第1回目の今回は Windows環境でのCGIの動作設定についてです。

前提となる環境は以下の通りです。

サーバーOS
Windows Server 2003
Webサーバー
Apache HTTP Server Win32 2.0以降

Power CMS for MTやそのベースとなっているMovable TypeはPerlで記述されたCGIです。

Apacheは、CGIに対するリクエストがあると、そのCGIをどう実行させるか判断するためにそのCGIの1行目(「shebang行」)を見ます。Movable Type のCGI (mt.cgi) などいには1行目に次のように書かれています。

#!/usr/bin/perl -w

LinuxであればOSに最初から含まれるPerlがこのパスに存在するため問題になりませんが、WindowsではこのパスにPerlインタプリタが存在することは希なのでこのままではCGIが動作しません。

対策ですが、すべてのCGIファイルのshebang行を書き換える方法があります。しかし Power CMS for MT や Movable Type で利用するCGIファイルは数が多い上、将来のバージョンアップ時には再び書き換える必要があるなどのリスクもあります。

そこで今回のTipsとなります。最近のApache Win32ではCGIを書き換えずに済む方法があります。

設定方法

  1. Apacheの設定ファイル (httpd.confや.htaccess) に (<VirtualHost>セクションなどに) 以下の設定を追加します。
    
    ScriptInterpreterSource Registry-Strict
    
  2. 次の画像を参考にレジストリエディタを開いてperl.exeへのパスを設定します。

    具体的には HKEY_CLASSES_ROOT¥.cgi¥shell¥ExecCGI¥command に [展開可能な文字列値] を作成し、その値をperl.exeへのパスにします。

    perl.exeにはオプションとして%1をつけます。

    レジストラエディタのウィンドウ(キャプチャ)

Apacheの設定ファイルに記述するディレクティブの詳細については、以下のドキュメントが参考になります。


カテゴリー
技術情報
投稿者
持田 徹

Recent Entries