一般的な方法としては, 以下の様な手順を踏むと思われる.
- VPSなどサーバーを借りる
- 借りたVPSにログインする
- VPSにApache, MySQL, Perlなどを導入する
- Movable Typeをインストールする
本稿では3.の太字部分に関する内容が記載されています.
Movable TypeのPerlモジュールは最低限導入するものとして, 以下の様なものがあげられる.(2015/02/28時点, Movable Type 6.1参考, 推奨環境構築の場合)
- CGI::Cookie
- Scalar::Uril
- LWP::UserAgent
- File::Spec
- Image::Size
- CGI
- DBI
- DBD::mysql
最低限, これらをインストールしていればCGIで動作するだろう. しかし, どうせならFastCGIとかPSGIとか使いたいですよね? 少しでも時間が短縮,快適になるのであればそちらを利用したいと思います.
普段インストールするときに, Movable Typeで恐らく利用するものを依存関係などを考慮したもので以下の様なものを利用して構築しています.(CentOS 6 / 7で確認)
sudo yum install perl
sudo yum install perl-Archive-Tar.noarch perl-Archive-Zip.noarch perl-Authen-SASL.noarch perl-Business-ISBN.noarch perl-Business-ISBN-Data.noarch perl-CGI.noarch perl-CPAN-Meta.noarch perl-CPAN-Meta-Requirements.noarch perl-CPAN-Meta-YAML.noarch perl-Cache-Memcached.noarch perl-Carp.noarch perl-Class-Accessor.noarch perl-Class-Inspector.noarch perl-Compress-Raw-Bzip2.x86_64 perl-Compress-Raw-Zlib.x86_64 perl-Convert-BinHex.noarch perl-Crypt-SSLeay.x86_64 perl-DBD-MySQL.x86_64 perl-DBI.x86_64 perl-Data-Dump.noarch perl-Data-Dumper.x86_64 perl-Devel-StackTrace.noarch perl-Digest.noarch perl-Digest-HMAC.noarch perl-Digest-MD5.x86_64 perl-Digest-SHA.x86_64 perl-Digest-SHA1.x86_64 perl-Email-Date-Format.noarch perl-Encode.x86_64 perl-Encode-Locale.noarch perl-Error.noarch perl-Exporter.noarch perl-ExtUtils-Embed.noarch perl-ExtUtils-Install.noarch perl-ExtUtils-MakeMaker.noarch perl-ExtUtils-Manifest.noarch perl-ExtUtils-ParseXS.noarch perl-FCGI.x86_64 perl-File-Copy-Recursive.noarch perl-File-Listing.noarch perl-File-Path.noarch perl-File-Temp.noarch perl-File-Which.noarch perl-File-pushd.noarch perl-Filter.x86_64 perl-Font-AFM.noarch perl-GD.x86_64 perl-GSSAPI.x86_64 perl-Getopt-Long.noarch -y
sudo yum install perl-HTML-Format.noarch perl-HTML-Parser.x86_64 perl-HTML-Tagset.noarch perl-HTML-Tree.noarch perl-HTTP-Cookies.noarch perl-HTTP-Daemon.noarch perl-HTTP-Date.noarch perl-HTTP-Message.noarch perl-HTTP-Negotiate.noarch perl-IO-Compress.noarch perl-IO-HTML.noarch perl-IO-Socket-IP.noarch perl-IO-Socket-SSL.noarch perl-IO-String.noarch perl-IO-Tty.x86_64 perl-IO-Zlib.noarch perl-IO-stringy.noarch perl-IPC-Run.noarch perl-JSON.noarch perl-JSON-PP.noarch perl-JSON-XS.x86_64 perl-LWP-MediaTypes.noarch perl-MIME-Lite.noarch perl-MIME-Types.noarch perl-MIME-tools.noarch perl-Mail-Sendmail.noarch perl-MailTools.noarch perl-Module-Load.noarch perl-Net-Daemon.noarch perl-Net-HTTP.noarch perl-Net-LibIDN.x86_64 perl-Net-SMTP-SSL.noarch perl-Net-SSLeay.x86_64 perl-Package-Constants.noarch perl-Parse-CPAN-Meta.noarch perl-PlRPC.noarch perl-SOAP-Lite.noarch perl-SOAP-Transport-TCP.noarch perl-String-CRC32.x86_64 perl-TermReadKey.x86_64 perl-Test-Fatal.noarch perl-Test-Harness.noarch perl-Test-Simple.noarch perl-Time-HiRes.x86_64 perl-TimeDate.noarch perl-Try-Tiny.noarch perl-URI.noarch perl-WWW-Curl.x86_64 perl-WWW-RobotRules.noarch perl-XML-LibXML.x86_64 perl-XML-NamespaceSupport.noarch perl-XML-Parser.x86_64 perl-XML-SAX.noarch perl-XML-SAX-Base.noarch perl-YAML.noarch perl-YAML-Syck.x86_64 perl-common-sense.noarch perl-devel.x86_64 perl-libwww-perl.noarch perl-version.x86_64 -y
もし, PSGIなどを利用したいということであれば, yumで導入するよりも明らかにcpanmで導入したほうが早いとおもいます. そのため,cpanmを設定した上でPSGIを導入すると良いと思います.(注: root権限でする時にはsudo -iでは動作しません。suコマンドでユーザーの切替が必要になります
curl -L https://cpanmin.us | perl - --sudo App::cpanminus
cpanm Task::Plack
cpanm XMLRPC::Transport::HTTP::Plack
このようなツールで導入することができました. FastCGIなどの使い方はMovable Type.jpなどに記載がされているので,そちらを確認されたほうが良いでしょう.