LoginSignup
24
25

More than 5 years have passed since last update.

CentOS6にMovableTypeを導入してみました

Last updated at Posted at 2015-02-03

踊る阿呆 Mitziです。インフラエンジニアやっています。

はじめに

WordPressに較べ意外と面倒だったMovableTypeの導入方法を記載します。

Index

  1. MovableTypeの実装
  2. MySQLデータベースの設定
  3. Movable Type設定

評価版の入手

・今回はトライアル版をダウンロード

■Movable Type トライアルのお申し込み
https://www.sixapart.jp/inquiry/movabletype/trial.html

01. MovableTypeの実装

参考

Movable Type 6.0 ドキュメント
http://www.movabletype.jp/documentation/

必要な環境

Movable Type 6 導入の場合

■Web Server
以下いずれか
・Apache HTTP Server 2.0 以上
・Microsoft Internet Information Server 7.5 以上
・nginx 1.2.0 以上(CGI もしくは PSGI 実行環境が別途必要となります)

■DB
MySQL 5.0以上

■perl
perl 5.8.1以上

■perlモジュール
CGI
Image::Size
File::Spec (バージョン0.8以上)
CGI::Cookie
LWP::UserAgent

■モジュール(DBモジュール)
DBI (バージョン1.21以上)
DBD::mysql

■文字コード
UTF-8

検証環境

■今回実装したのは以下環境になります。

AMI: suz-lab_centos-core-6.5.1
CentOSバージョン: CentOS release 6.5 (Final)
kernelバージョン: 2.6.32-431.23.3.el6.x86_64  [64bit版]
perl: perl-5.10.1-136.el6.x86_64
MySQLサーバー: mysql-server-5.5.41-27.el6.art.x86_64
Apache: httpd-2.2.15-39.el6.centos.x86_64

▽文字コードほかロケールも確認

[root@Mitzi-dev ~]# locale
LANG=ja_JP.utf8
LC_CTYPE=ja_JP.utf8
LC_NUMERIC="ja_JP.utf8"
LC_TIME="ja_JP.utf8"
LC_COLLATE="ja_JP.utf8"
LC_MONETARY="ja_JP.utf8"
LC_MESSAGES="ja_JP.utf8"
LC_PAPER="ja_JP.utf8"
LC_NAME="ja_JP.utf8"
LC_ADDRESS="ja_JP.utf8"
LC_TELEPHONE="ja_JP.utf8"
LC_MEASUREMENT="ja_JP.utf8"
LC_IDENTIFICATION="ja_JP.utf8"
LC_ALL=

事前準備

■perlの実行環境確認

・Movable Type では、/usr/bin/perl が初期値となっているとのこと

[root@Mitzi-dev ~]# whereis perl
perl: /usr/bin/perl /usr/share/man/man1/perl.1.gz
※Movable Typeの初期値と同じであることを確認

■モジュールの実装状況確認

・確認コマンド

書式
# perl -Mモジュール名 -e '' 

# perl -MCGI -e ''
# perl -MImage::Size -e ''
# perl -MFile::Spec -e ''
# perl -MCGI::Cookie -e ''
# perl -MLWP::UserAgent -e ''
# perl -MDBI -e ''        
# perl -MDBD::mysql -e ''
※エラー出力がなればモジュールが導入されている

■perlモジュールを導入する必要がある場合、CPANとその他必要なモジュールを導入しておく

・流れは以下 (詳細は省略します)
01. CPANインストール
02. libyaml-develインストール
03. CPAN初期設定
04. CPANでYAMLインストール
05. CPAN Upgrade
※とても時間が掛かるので注意下さい。。

■インストール先の決定

ディレクトリ 内容
アプリケーション ディレクトリ スクリプトやライブラリを保管するディレクトリ。webサーバ用にcgi-binディレクトリがあればソチラを推奨
ウェブサイト ディレクトリ webサーバのDocumentRoot
スタティックディレクトリ Movable Type の管理画面で利用するスタイルシートや画像ファイル等を保管するディレクトリ。(デフォルトでは、mt-static)

今回はapacheのデフォルトに合わせて配置してみました

ディレクトリ 内容
アプリケーション ディレクトリ /var/www/cgi-bin/mt
ウェブサイト ディレクトリ /var/www/html/mt/mt-static
スタティックディレクトリ /var/www/html/mt

■ MovableTypeの配置

・WinSCPなどを利用してzipファイルのまま ドキュメントルート(/var/www/html) 配下にアップロード

# cd /var/www/html
# unzip MT-6_0_6.zip
# \rm -f MT-6_0_6.zip
# mv /var/www/html/MT-6.0.6 /var/www/html/mt

■スタティックディレクトリ

・「mt-static」ディレクリ配下のファイルを 「スタティックディレクトリ」に格納する
※デフォルトでそのようになっているので対処なし

・公式マニュアルに従いスタティックディレクトリ配下の「support」ディレクトリの権限を777に変更、またapacheと同じグループ権限を付与

# chmod 775 /var/www/html/mt
# chmod 775 /var/www/html/mt/mt-static
# chmod 777 /var/www/html/mt/mt-static/support
# chown -R root.apache /var/www/html/mt

■アプリケーションディレクトリ

・mt-staticディレクトリ以外を移動

# mkdir /var/www/cgi-bin/mt
# cd /var/www/html/mt
# mv !(mt-static) /var/www/cgi-bin/mt
# chown -R root.apache /var/www/cgi-bin/mt

■パーミッション

・cgiファイルは 755 とする

# find /var/www/cgi-bin/mt -name '*.cgi*' -exec chmod 755 {} \;
# find /var/www/html/mt/mt-static -name '*.cgi*' -exec chmod 755 {} \;

・ちなみにapacheのデフォルト設定は以下のようになっています

# less /etc/httpd/conf/httpd.conf
----------
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
----------

■perl実行環境を合わせる

各スクリプトのperl実行環境が /usr/bin/perlと異なる場合、スクリプト側 もしくは シンボリックリンクで合わせる

例: スクリプト書き換え
#!/usr/local/bin/perl -w

MovableType初期設定 01

■Movable Type システムチェック [mt-check.cgi]

・以下のようにシステムチェック用スクリプト 「mt-check.cgi」 を実行し確認
http://[Public IP]/cgi-bin/mt/mt-check.cgi
or
http://[ELB Public DNS]/cgi-bin/mt/mt-check.cgi
or
http://[DomainName]/cgi-bin/mt/mt-check.cgi

・チェック結果を確認
Movable Type動作に必要最低限の環境が整っていることを確認
20150202_mt-check_キャプチャ.png

・必須モジュールがインストールされており、画面最後部に「Movable Typeを利用できます。」と出ていればOK。
20150202_mt-check_キャプチャ2.png

■モジュールをインストールする場合

※CPANが導入されていること前提

個別にインストール(下記例)

# capn
cpan[1]> install Plack

確認

# perl -MPlack -e ''

02. MySQLデータベースの設定

02-1. MySQLサーバの用意

RDS(MySQL)でもよいが、今回はローカルにMySQLサーバを構築しました。

■やったことの概要

・mysql-serverインストール
・文字コードをUTF-8に
・起動、自動起動もON
・MySQL初期設定
・MovableType用に ユーザ、DB作成
・接続確認 および データベースの文字コード確認(UTF-8)

02-2. DBアクセス情報の設定

■公式サイトより

環境変数リファレンス
http://www.movabletype.jp/documentation/appendices/config-directives/

■mt-config.cgiの設定

# cp -p /var/www/cgi-bin/mt/mt-config.cgi-original /var/www/cgi-bin/mt/mt-config.cgi
# chmod 755 /var/www/cgi-bin/mt/mt-config.cgi
# vi /var/www/cgi-bin/mt/mt-config.cgi
--------------------
# The CGIPath is the URL to your Movable Type directory
CGIPath    http://[DomainName他]/cgi-bin/mt/
StaticWebPath http://[DomainName他]/mt/mt-static/

##### MYSQL #####
ObjectDriver DBI::mysql
Database <DB名>
DBUser <ユーザ名>
DBPassword <password>
DBHost <hostname>
※RDS や 外部DBの場合、ホスト名を指定。標準はlocalhost

DBPort <port no>
※標準ポート3306以外を利用している場合追記

DBSocket /path/to/mysql.sock
※MySQL が Movable Type を動作させるウェブサーバーと同一のホストにあるものの、MySQL と Perl で使用する UNIX ソケットが違う場合は DBSocket の行を追記

## Change setting to language that you want to using.
#DefaultLanguage en_US ←コメントアウト
DefaultLanguage ja ←コメント解除

03. Movable Type設定

03-1. 管理者アカウントの設定

以下スクリプトにブラウザからアクセス

http://[DomainName]/cgi-bin/mt/mt.cgi

アカウントの作成

20150202_アカウントの作成_キャプチャ.png


ユーザ名: <管理者アカウント>
表示名:
電子メール:
システムのメールアドレスとして利用する: <チェック>

使用言語: 日本語
パスワード: <管理者パスワード>
パスワード確認: ※再入力


[次へ]押下

最初のウェブサイトを作成

20150202_アカウントの作成_キャプチャ2.png


ウェブサイト名: <任意> ※例: Movable Type導入テスト
ウェブサイトURL: http://[DomainName]/mt
ウェブサイトパス: /var/www/html/mt

テーマ: <リストから選択>
タイムゾーン: UTC+9(日本標準時間)


[インストール]押下
※URLが変わったら管理画面より本設定を変更し再構築を掛ける必要がありマス

インストール完了

20150202_アカウントの作成_キャプチャ3.png

「インストールを完了しました!」の表示が出て、表示されるログにエラーが無ければOK

[Movable Typeにサインイン] 押下

03-2. システムからのお知らせへの対処

ダッシュボード上にエラーが出力されていた場合の対処

■イメージドライバーが設定されていません

20150202_ダッシュボード_キャプチャ.png

Image::Magick、NetPBM、GD、Imagerのいずれかをインストールする必要があります。

・ImageMagick と Image::Magick両方をインストールする場合

# yum install ImageMagick-perl
※ImageMagick も一緒にインストールされます

おわり

20150202_ダッシュボード_キャプチャ2.png

以上で最低限の設定が完了し、ブラウザよりMovableTypeを利用出来るようになりました。

24
25
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
25