[perlメモ]WAFのMojoliciousで遊んでみる。

レンタルサーバーで使えるperl用の簡単なWAFてなにかないかな – KUMA TYPE

上記のエントリでtori様から勧めていただいたMojoliciousで昨日からちょっと遊んでます。インターネットで検索していみるとCatalystを元々作った人が新たに作っているのがMojoらしいですね。でMojoはミドルウェアで付属するWAF(Web Application Framework)がMojoliciousということです。

Mojoを使って自作ウェブアプリをよりポータブルに!:第1回 はじめてのMojo|gihyo.jp … 技術評論社

とりあえず今は上の記事を参考に勉強しています。

環境は、Windows XP Home Edition SP3、perl 5.8.8 Build 824(ActivePerl)、AN HTTPD 1.42p、Apache 2.0.64といったところ。

MojoはActivePerl 5.8.8の場合、ppmから0.991251をインストールすることができるが、実際にインストールしてみたところ、作成したプログラムを下記のようにindex.cgiを作ってcgiとして実行した場合。formから入力したパラメータを
$tx->req->param(‘text’)
で受け取る事ができないトラブルに遭遇した。素直に下記のサイトから最新のアーカイブをダウンロードしてパスを通したほうが普通に動くのでそちらをお勧めする。

#!c:/perl/bin/perl.exe
##!/usr/bin/perl
use strict;
use warnings;
#use lib "F:/WWW/kumacchi/public_html/mojo2/lib";
use lib "E:/Applications/Apache Group/Apache2/htdocs/simple_bbs/lib";
use Mojo::Server::CGI;

$ENV{MOJO_APP} = ‘SimpleBBS’;

Mojo::Server::CGI->new->run;

Windows用Apacheのバイナリで動かす場合はuse libするときに、ついhtdocsに放りこんで動かそうとしたが、
use lib qw(E:/Applications/Apache Group/Apache2/htdocs/simple_bbs/lib);みたいにスペースを含んだパスをqwでuse libするとはまるので注意。

use lib "E:/Applications/Apache Group/Apache2/htdocs/simple_bbs/lib";

とスペースを含むパスは個別に指定してやるのが無難。

20100679

kraih/mojo – GitHub

Sebastian Riedel / Mojolicious-0.999950 – search.cpan.org

タグ : , ,