mojoliciousのインストールから実行まで
mojoliciousを使ってみる。
■cpanmとは
cpanm は、Perlモジュールをインストール(モジュールの取得、解凍、ビルド、インストール)するコマンド。
■cpanとcpanmの違い??
http://www.omakase.org/perl/cpanm.html
に書かれているが
2010年2月に書かれたApp-cpanminusというモジュールのことがcpanmらしい。
cpan::shellの欠点としてやはり依存モジュールの多さが上げられているが
cpanmの場合は一枚岩のプログラムなので可搬性に優れるそうだ。
■cpanmのインストール方法
(参考)
http://d.hatena.ne.jp/perlcodesample/20101027/1278596435
# cpanmのインストール curl -L http://xrl.us/cpanm > cpanm perl cpanm App::cpanminus # cpanmのアップグレード cpanm --self-upgrade vi ~/.bashrc export PERL_CPANM_OPT="--local-lib=~/perl5" export PATH=$HOME/perl5/bin:$PATH; export PERL5LIB=$HOME/perl5/lib/perl5:$PERL5LIB; source ~/.bashrc
意味
1行目 cpanmの設定を行う。モジュールをインストールするディレクトリ指定
# 試しにJSONモジュールをインストール。
cpanm JSON
ls ~/perl5/lib/perl5
perl -MJSON -e 1
■mojoliciousをインストール
cpanm Mojolicious
■mojoliciousを使用してみる
#雛形の作成
mojo generate lite_app myapp.pl
結果
[exist] /var/moja/test3
[write] /var/moja/test3/myapp.pl
[chmod] myapp.pl 744
#デーモンの起動
# perl myapp.pl daemon
Module "Pod::Simple" not present in this version of Perl.
Please install it manually or upgrade Perl to at least version 5.10.
#mojo generate app MyApp 結果 [mkdir] /var/moja/test2/my_app/script [write] /var/moja/test2/my_app/script/my_app [chmod] my_app/script/my_app 744 [mkdir] /var/moja/test2/my_app/lib [write] /var/moja/test2/my_app/lib/MyApp.pm [mkdir] /var/moja/test2/my_app/lib/MyApp [write] /var/moja/test2/my_app/lib/MyApp/Example.pm [mkdir] /var/moja/test2/my_app/t [write] /var/moja/test2/my_app/t/basic.t [mkdir] /var/moja/test2/my_app/log [mkdir] /var/moja/test2/my_app/public [write] /var/moja/test2/my_app/public/index.html [mkdir] /var/moja/test2/my_app/templates/layouts [write] /var/moja/test2/my_app/templates/layouts/default.html.ep [mkdir] /var/moja/test2/my_app/templates/example [write] /var/moja/test2/my_app/templates/example/welcome.html.ep
#daemonの起動
perl script/my_app daemon
結果
Server available at http://*:3000.
よってperl-5.10.1をインストールしなおし。
■perl-5.8.1からperl-5.10.1へアップグレード
yum remove perl
wget http://www.cpan.org/src/perl-5.10.1.tar.gz
tar xvzf perl-5.10.1.tar.gz
cd perl-5.10.1
./Configure -de
make & make install
which perl
すると
/usr/local/bin/perl
/usr/local/bin/perl5.10.1
の2個ある。
パスの追加(参考)
http://pocketstudio.jp/linux/?%A5%D1%A5%B9(PATH)%A4%CE%B3%CE%C7%A7%A4%C8%C0%DF%C4%EA%CA%FD%CB%A1%A4%CF%A1%A9
echo $PATH
PATH=$PATH:/usr/local/bin/perl5.10.1
export PATH
echo $PATH
./Configure prefix=/usr/bin/perl
■daemo起動
# perl myapp.pl daemon
Thu Mar 17 16:26:41 2011 info Mojo::Server::Daemon:316 [18699]: Server listening (http://*:3000)
Server available at http://*:3000.
■apacheをリバースプロキシに設定
NameVirtualHost *:80 <VirtualHost *:80> ServerName 182.48.55.21 ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ </VirtualHost>