MovableTypeは前から扱っていたのですが、レンサバから提供されていたものだったので、もう少し自由にいじれるMovableTypeの環境がないかなぁと思って自分でサーバー構築から始めることにしました。
しかし、過去の経験から別なPCに構築するとあまり触らなくて、そのうち忙しさにかまけていじらなくなることは目に見えていたので、なんとかいつも使うPCに構築したい!・・・もちろん安く。
ということで、VMWareを使ってLinuxServerを構築し、そこにMovableType環境を入れてしまおう!と目論見ました。
まぁネタ的には決して新しいものに挑戦するものではないですが、備忘録といいますか、作業記録的に。。。
まずはVMWareですが、こちらは
VMWareのダウンロードページからVMware Playerを無料でダウンロードできます。
現在の最新版は2.5.1。こちらはインストールも問題ないでしょう。
次にUbuntuですが、Ubuntuでは
VMWare用のイメージファイルが用意されています。最新版は8.04LTSになっています。
私は一昔前のLinuxを触ったことがあって、しばらくLinuxから離れていたのですが、Ubuntuをはじめて触ったときにはあまりの簡単さに驚きました。
VMWareを使わないで、別のPCなどにUbuntuを入れたい場合は、
CDイメージが用意されていますが、こちらもCDさえ作れてしまえば異様に簡単にインストールできます。
これからLinuxを勉強したい人は是非お試しアレ。
イメージをダウンロードしたら、VMWareを起動して「ファイルを開く」でダウンロードしたUbuntuイメージを読み込みます。
Ubuntuが起動し、セットアップ。
2,3の質問に答えれば構築完了。すぐにログインできます。
ログインしたら、パッケージマネージャから必要なパッケージをインストールします。
メニューバーから「システム」-「システム管理」-「Synapticパッケージマネージャ」をクリック。
「再読込」をクリックしてパッケージのリストを最新にします。
そこから、MovableTypeに必要なApache2、MySQLServer、Imagemagickを選択(ダブルクリックで選択)し、「適用」します。
PostgresやSQLliteが良い人はそちらを選択。
インストール後、Apacheの設定。
前提としては、ユーザー領域にMovableTypeを設置する、ということでユーザー領域でもCGIが動作するようにします。
Apacheの設定等は/etc/apache2/にあり、そこのhttpd.confを書きかえます。
えーホントは、httpd.confは下位のバージョンとの互換のためにありこ一つ一つの設定を書いてはいけないはずで、本当はたぶん、ですがconf.dディレクトリの中にファイルを作って読み込ませなければいけないんだと思います。
何かに書いてました。はい。
しかしまぁhttpd.confに書いても読み込まれるわけで、古いApacheを知っているとなんとなく親近感があり、えー・・・面倒だからです。ハイ。
権限云々でhttpd.confをそのまま書き換えるのは難しいので、自分のディレクトリ/home/(user_name)内にhttpd.confを作成します。
Ubuntuの「場所」メニューから「コンピュータ」を選び「ファイルシステム」を選びます。
ここがいわゆるCドライブの中身ですが、「home」ディレクトリの中の自分のアカウント名(以下user_nameで示します)の中に入ります。
Windowsと動作的に同じなのでファイルの作り方まで解説しなくてもいいと思いますが念のため、右クリックで「ドキュメントの生成」-「空のファイル」で作れます。
右クリックで「"テキストエディタで開く"」を選択。
そこに次の文を記述して保存します。
<Directory /home/*/public_html>
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>
要するに、ユーザー領域においてCGIファイルをCGIとして動かしなさいよ、という設定です。
Ubuntuのメニュー画面から「アプリケーション」-「アクセサリ」-「端末」を開き、
sudo cp ~/httpd.conf /etc/apache2/
と入力。
ユーザーのホームディレクトリにあるhttpd.confを/etc/apache2に管理者権限でコピーせよ!というコマンドです。
/etc/apache2以下は自分の管理権限にないので、管理者権限でコピーするわけです。
なので、パスワードを聞かれたらパスワードをいれてください。
その後、
sudo /etc/init.d/apache2 force-reload
で設定を読み込み
sudo /etc/init.d/apache2 restart
でApacheを再起動させます。
自分のホームディレクトリ/home/(user_name)に「public_html」という名前のディレクトリを作成します。
そこにファイルを置くと、
http://localhost/~(user_name)/で参照することができます。
/home/(user_name)/public_html/の中にcgi-binというフォルダをつくり、その中にtest.cgiという空のファイルを作成。
右クリックで「"テキストエディタで開く"」を選択。
以下の内容を記述して保存します。
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello, World.";
perl/CGIがちゃんと動くかテスト用のスクリプトです。
保存し、ファイルを右クリック。
「プロパティ」を選択し、「アクセス権」タブで「プログラムとして実行できる」にチェックを入れます。
再確認。
/home/(user_name)/public_html/cgi-bin/test.cgi
がありますか?
ブラウザを起動してみて
http://localhost/と入れてみてください。
It Works!
と表示されたらApacheの動作はOKです。
さらに
http://localhost/~(user_name)/cgi-bin/test.cgiを開いてみて、「Hello, World.」と表示されればCGIの動作もOKです。
もし表示されない場合は、
Apacheのサイトを読んで解決してね

後はデータベースの構築と、imagemagickの初期設定、Movabletypeの設置ですが、その2へ続きます。。。