MT関連の開発にはMAMPに複数のバージョンのMTを同時にインストールして使っていますが、毎回新しいバージョンを入れる度にやり方をすっかり忘れているので、次にインストールする時のためにここにメモしておきます。
- MTのアーカイブを展開後、"mt425"等バージョン番号をつけたディレクトリ名にrenameし、DocumentRootへコピーする。
- 以下の内容でmt-config.cgiを作成する。
CGIPath /mt425/
StaticWebPath /mt425/mt-static/
StaticFilePath /Applications/MAMP/htdocs/mt425/mt-static
ObjectDriver DBI::mysql
Database mt425
DBUser root
DBPassword xxxx
DBHost localhost
DBSocket /Applications/MAMP/tmp/mysql/mysql.sock
MailTransfer sendmail
SendMailPath /usr/sbin/sendmail
MySQLのSoketファイルは/Applications/MAMP/tmp/mysql/mysql.sockにある。mt-config.cgiのDBSocketにはこれを設定する。
- バージョン毎のディレクトリ以下で直接cgiが動くよう、DocumentRootに以下の内容の.htaccessが存在するか確認し、なければ作成する。
Options +ExecCGI
AddHandler cgi-script .cgi
- mt-config.cgiで指定したデータベースを作成する。mysql/mysqladminは/Applications/MAMP/Library/binにある。
> mysqladmin -u root -p create mt425 --default-character-set=utf8
- mt.cfgにアクセスする。
MAMPを起動しても、Apache/MySQLサーバの状態が「赤」になり、起動しないことがたまにあります。そういう場合は、/Applications/MAMP/bin/apache2/logs/httpd.pidが存在するならそれを削除してみます。MySQLで同様の場合は、/Applications/MAMP/tmp/mysql/mysql.pidを削除してみます。
前回に引き続きWin32版Apache関係のネタを書いていきます。
ローカルにWin32版Apacheを用いたWebアプリケーション開発環境を構築した場合のメリットのひとつとして、ビルド・デバッグの手軽さという要素があるかと思います。
今回はローカル環境でそのような作業を行う場合に、役に立つかもしれないTipsを紹介しようと思います。
ファイルの配置ミスだったり、ファイル名のtypoだったり、Perlのモジュール不足だったり・・・ちょっとしたミスで期待した出力を得ることができない状況というのはよく発生することだと思います。
・・・よく発生するのは私だけかもしれません(笑)
このような状況に陥った場合には、まず最初にApacheのエラーログを見ることになると思いますが、事あるごとにテキストエディタでエラーログを開いて・・・という作業は結構かったるいものです。
私は一時期Apacheのログの最終行を表示するショートカットを作っていたりしました。
Windowsアプリケーションの開発者にはおなじみかもしれませんが、WindowsのAPIにOutputDebugStringというAPIがあります。
これは開発ツールが持つデバッガにデバッグ出力を行うためのものですが、開発ツールをインストールしなくとも、この出力を表示するDebugViewというツールがSysinternalsより公開されています(現在はMicrosoftが配布しています)
今回このツールを活用して、Win32版Apacheのエラーログをすばやく参照できるデバッグ補助環境を作りたいと思います。
前回に引き続きWin32版Apache関係のTipsを書いていきたいと思います。
まもなくMovable Type 4.2が正式版になる予定ですが、MT4.2において進化した機能のひとつがFastCGI対応です。
これまでもFastCGI上で動作させることは可能だったのですが、安定性など不安要素があり、簡単にお勧めできる手法ではありませんでした。
今回MTOSでの成果が取り込まれたことにより、いくつかの既知の制限事項は残しているものの、安定性の問題はクリアされたようです。
そのため今回のバージョンアップを機に、FastCGI環境を試したいという方もいるかと思います。
そこで今回はWin32版ApacheのFastCGI環境でMovable Typeを動作させる方法について、いくつか書いておきたいと思います。
Win32環境でApache上にMovable Typeの環境を構築する場合、CGIプログラムをどのように実行させるかによって、いくつかの設定方法が存在します。
最近オールインワンのMTOS環境であるInstaMTがリリースされ、設定を意識せずMTOSの実行環境が手に入るようになりましたが、すでにApacheやActivePerlなどをインストールしている場合、オールインワンであることを余計に感じることもあるかと思います。
そこで今回、Win32版Apache上でMovable TypeをはじめとするPerl/CGIの実行環境についてまとめておきたいと思います。