サーバ構築(8) BLOG環境 (Movable Type)

Pocket

少し前、猫も杓子も BLOG、BLOG と騒いでいた時期に、一度手を染めてみたことがありました。そのときは Nucleus で環境を作ってみて、あれはあれで面白かったんですが、毎日記事を書くというのが性に合わなかったというか、環境ができあがった時点で飽きたというか、とにかく早々に挫折してコンテンツも消してしまいました。

そこで感じたのは、いわゆる日記形式のコンテンツとしての BLOG を作るのではなく、BLOG のシステムを CMS として利用するという形の方が私には好ましかろうということでした。Nucleus は BLOG の仕組みを理解する教材としてはなかなか良かったのですが、カスタマイズという点においては私には敷居が高かったというか、CSS をいぢくるのが面倒だったというか、ともかくくじけたので、少し敷居の低そうな Movable Type を使ってみようかな、と思い立ったわけです。最終的に環境ができあがったところで WordPress に流れてしまったので使ってはいないんですが、インストール方法くらいは整理しておこうかなと。WordPress は整理するまでもないほどあっけなくインストールできてしまったので。

OS のインストール時に、「Webサーバ」と「MySQL」を選択します。このとき、選択パッケージの詳細を確認して、php-mysql と mysql-server が選択されていることを確認するのを忘れずに。選択から外れていたら必ず追加しておくこと。php、mysql、perl 関連のパッケージについて、インストール状況を確認しておきます。また、Movable Type は個人利用は無償ですが入手には簡単な手続きが必要です。本家のWeb からあらかじめ入手しておいてください。

# rpm -qa|grep mysql
php-mysql-5.1.6-15.el5
mysql-connector-odbc-3.51.12-2.2
mysql-5.0.22-2.2.el5_1.1
mysql-5.0.22-2.2.el5_1.1
mysql-server-5.0.22-2.2.el5_1.1
libdbi-dbd-mysql-0.8.1a-1.2.2

# rpm -qa|grep php
php-mysql-5.1.6-15.el5
php-cli-5.1.6-15.el5
php-5.1.6-15.el5
php-common-5.1.6-15.el5
php-ldap-5.1.6-15.el5
php-pdo-5.1.6-15.el5

# rpm -qa|grep perl
perl-BSD-Resource-1.28-1.fc6.1
mod_perl-2.0.2-6.3.el5
perl-Socket6-0.19-3.fc6
perl-IO-Zlib-1.04-4.2.1
perl-HTML-Tagset-3.10-2.1.1
perl-String-CRC32-1.4-2.fc6
perl-URI-1.35-3
perl-NKF-2.07-1.1.fc6
newt-perl-1.08-9.2.2
perl-Compress-Zlib-1.42-1.fc6
perl-Net-SSLeay-1.30-4.fc6
perl-IO-Socket-INET6-2.51-2.fc6
perl-Digest-HMAC-1.01-15
perl-Archive-Tar-1.30-1.fc6
perl-Net-DNS-0.59-3.el5
perl-HTML-Parser-3.55-1.fc6
perl-DBI-1.52-1.fc6	
perl-DBD-MySQL-3.0007-1.fc6	
perl-5.8.8-10.el5_0.2	
perl-Digest-SHA1-2.11-1.2.1	
perl-IO-Socket-SSL-1.01-1.fc6	
perl-Net-IP-1.25-2.fc6	
perl-libwww-perl-5.805-1.1.1	

足りないパッケージを追加しておきます。php-mbstring は必須。

# yum -y install php-mbstring
# yum -y install perl-Archive-Zip perl-XML-SAX

MySQLの初期化。とりあえず一度サービスを起動すれば初期化されます。

# chkconfig mysqld on
# service mysqld start

MySQL データベースを初期化中:  Installing all prepared tables
Fill help tables
(中略)
MySQL を起動中:                                            [  OK  ]

起動したら何はともあれ root パスワードを設定します。この例では、パスワードは「hogehoge」です。これは Linux の root パスワードとは別のものです。このパスワードはきちんと記録しておきましょう。

# mysqladmin -u root password 'hogehoge'

次に MovableType 用のデータベースを作成します。この例では、条件は以下の通り。
なお、’mysql>’ は MySQL のプロンプトです。

DB名:mt
DBユーザ名:mt
パスワード:herohero

# mysql -u root -phogehoge
mysql> create database mt;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on mt.* to mt@localhost identified by 'herohero';
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

DB の準備が整ったので、いよいよ MovableType を設置します。普通は公式サイトから最新のパッケージを取得してきて、PC 上で ZIP アーカイブを展開して設定ファイルを書き換えた上でサーバに FTP するという手順ですが、せっかくの自宅サーバでそんなまどろっこしいことは止めましょう。ZIP アーカイブをそのままサーバに FTP してしまえばよろしい。FTP する先は、httpd.conf で ScriptAlias 指定したディレクトリです。以下は DocumentRoot が /home/www/html, cgi-bin が /home/www/cgi-bin/ という前提です。DocumentRoot には、ユーザ apache が書き込み可能な権限を設定します。

# chmod 775 /home/www/html/
# chgrp apache /home/www/html
# cd /home/www/cgi-bin
# unzip MT-4_1-ja.zip

ZIP アーカイブを展開したら、ディレクトリ名をリネームした後、 mt-static ディレクトリを丸ごと DocumentRoot 配下にコピーし、その下の support ディレクトリのパーミッションを 777 に変更します。

# mv MT-4.1-ja mt
# cd mt
# cp -pr mt-static /home/www/html/
# chmod 777 /home/www/html/mt-static/support

サンプルの mt-config.cgi をコピーして編集します。MySQL を使用するので、関係ない PostgreSQL と SQLITE の項目は削除します。

# cp mt-config.cgi-original mt-config.cgi
# vi mt-config.cgi
[/home/www/cgi-bin/mt/mt-config.cgi]
15c15
< CGIPath    http://www.example.com/cgi-bin/mt/
---
> CGIPath    /cgi-bin/mt/
21c21
< StaticWebPath    http://www.example.com/mt-static
---
> StaticWebPath    /mt-static/
29,31c29,31
< Database DATABASE_NAME
< DBUser DATABASE_USERNAME
< DBPassword DATABASE_PASSWORD
---
> Database mt
> DBUser mt
> DBPassword herohero
33,44d32
<
< ##### POSTGRESQL #####
< ObjectDriver DBI::postgres
< Database DATABASE_NAME
< DBUser DATABASE_USERNAME
< DBPassword DATABASE_PASSWORD
< DBHost localhost
<
< ##### SQLITE #####
< ObjectDriver DBI::sqlite
< Database /path/to/sqlite/database/file
<

Webブラウザで、MovableType が動作しているかを確認します。
http://www.example.jp/cgi-bin/mt/mt-check.cgi
もちろん、example.jp は自分のドメインですよ。この時点で MovableType は使用できる状態になりますが、一部のオプションは使用不能です。

以下のオプションモジュールが未インストールと判明。
Crypt::DSA
IO::Uncompress::Gunzip
IO::Compress::Gzip
Image::Magick
XML::Atom
Mail::Sendmail

せっかくの自宅サーバなので全てのオプションが使用できるように perl のモジュールを追加していきます。ImageMagick は CentOS のパッケージが利用可能です。下の2つのパッケージは、後で XML::Atom を入れる際に要求される羽目になるので先に入れておきます。

# yum -y install ImageMagick ImageMagick-perl
# yum -y install expat-devel libxml2-devel

CentOS でパッケージの用意されていないものは perl の CPAN モジュールからインストールします。起動するとごちゃごちゃと色々聞かれますが、とりあえずデフォルトのまま Enter キーを押して先に進んでいけばインストールまでたどり着けるはずです。

# perl -MCPAN -e shell
cpan> install Crypt::DSA
cpan> install IO::Uncompress::Gunzip
cpan> install XML::Atom
cpan> install Mail::Sendmail

以上でオプションが全て使用可能な MovableType 環境の完成です。ここまでできあがった時点でくじけました(笑)。この先は聞かないでね。

これまでのコメント

  1. CentOSを入れたshuttleにMovableTypeを導入する(1) « かちょう日記 :

    […] で、いよいよMovableType。 サーバ構築(8) BLOG環境 (Movable Type) 準備は基本的に上リンク先に沿って。 但し、私yum大好きなので、片っ端からyumで処理。 yum install mysql yum install php-mysql yum install m […]

この記事にコメントする

Powered by WordPress, WP Theme designed by WSC Project. ログイン