これでもかッ、ってほど聴いている曲がある。
2010年2月アーカイブ
最近ツボな曲
何故Crypt::SaltedHashを使いたかったのか
Crypt::SaltedHashを知ったのは、Casual Track - JPerl Advent Calendar 2009でした。
MD5の逆引きについては、一応知っていたのですが、対応については深く考えていませんでした。
でも、手軽に出来るのであればやらない理由はありません。
あ、cpanが使えない場合でも、ファイルをコピーするだけで使えます。
素晴らしいですね。
NanoAでAuthenticationしたい
データベースを使った簡単な掲示板もできたので、ユーザー登録出来る掲示板を作ろうと思った。
折角なので参考になるようなモジュールをCPANで探してみようと思った。
そうしたら出るわ出るわ。
Catalystのプラグインが多いこと。
SEE ALSO
NanoAでデータベースを使ってみる
小さな事からコツコツと。
ということで、nopasteのデータベース使用版とログイン不要の一行掲示板を作ってみた。
CRLFって重要!
Yacafiのソースを読んでいたら気づいてしまった。
my $CRLF = "\r\n";
CRLFの定義って重要だね。
HTTPの改行について
CGIのヘッダーを自力で出力していたときに気にした記憶があった。
\nは環境依存なので、\015\012とか使った方がいい
Charsbarさんの言うとおりでしょうね。
NanoAのextlibにも入っているCGI::Simpleでは、改行コードをOSに応じて定義しているようです。
SEE ALSO
気がつけばログイン出来るようになっていた
パスワードの要求画面では相変わらずエラーが出ているのだが、パスワードを入れると(XREAの環境では)ログイン出来るようになっていた。
しかし、ローカル環境では、未だにログインできず。
ローカル環境では、パラメータを直接書き込んでログインしたことにすれば、$app->is_adminはちゃんと認識してくれる。
それと、何故かログアウトはちゃんと動く。
sessionまわりの挙動がかなり謎。
admin.pmの中では同じようにredirectしているように見えるんだけど
。
何が違うんだろうか?
続々・色々と動かなかった話
NanoAの話ですが。
オフィシャルのcompile_errorはちゃんと動作するのだが、XREAではcompile_errorは動かない。
まあ、XREAはよいとしても、ローカル環境でも動かないのがとてもつらい。
CGI::ExceptionManagerがちゃんと働いていれば、コンパイル時のエラーも補足してくれるはずなのだが
。
と、思ってソースを見ていると、原因っぽいところがわかりました。
NanoAでインデックスページを作ると良いことがあった
NanoAについては、ローカル環境で色々と試行錯誤しているわけだが、元々のサンプルを参考にしたいので、できるだけ元の状態を保っておきたいと思っているのだが、なかなか思うように行かない。
で、ソースを読んでいたら、appディレクトリの下にindexというディレクトリを作ってやれば、そちらを読んでくれそうだったので試してみた。
NanoAのextlibにあるHTML::AutoFormについて
NanoAで便利だと思ったのは、フォームを作成するときに使っているHTML::AutoFormだ。
CPANにあるのかと思ったら、なかった。
codereposで管理されているモジュールだった。
フォームの定義をしておくと、HTMLを生成したり、投稿された内容をチェックしたりできる。
その定義が簡単に出来るのがすごい。
続・色々と動かなかった話
一年と少し前にブームになったMENTA、NanoA、Yacafiの軽量WAFのなかで、今の時点で最も動かしやすそうなNanoAを少しずつ触ってみることにした。
色々と動かなかった話
MENTAの新バージョンをインストールして、動いていたと思ったのだが、ちゃんと動いていなかったようだ。
app/controller/nanochat/main.plを実行するときにエラーが発生するようになっていた。
原因は今のところ、不明。
バージョンを0.14に下げても同じエラーになっているので、ひょっとして、最初から動いていなかったのではないかと打ちひしがれてみる。
で、NanoAといえば、サーバー上では動作するものの、手元のWindows上のローカルサーバーでは真っ白な画面になるだけで動かない。
過去の記事を見てうんうん唸っていたがヒントはない。
仕方が無いので、コマンドラインで実行してみると、どうやら一時ファイルを作れていないようだった。
ルートディレクトリに「tmp」というフォルダを作ってやって実行すると、動いた。
まあ、Windows仕様ではないから仕方が無いよね。
「mt_cache_dir」の設定を変えてやれば良いんだろうけど。
で、今更ながら「Yacafi」に手を出してみた。
またもや、サーバーでは動くが、手元のローカルサーバーでは動かない。こちらはアクセスがキャンセルされたような反応。
コマンドラインで実行してみると、ちゃんとHTMLが表示されている。
うーむむむむむ。何がいけないのか不明。

