トップ 最新

ただのにっき

2001-03-02(金) RubyConf、mod_ruby、eRuby、cgi.rb、万歩計 [長年日記]

Mary?

おや? この日記の次の名称が決まったようで >[Kondara-users.ja:05313]

Ruby Conference

おおー、ついにアメリカでカンファレンスかぁ。もうマイナーとは呼ばせないぜ。「desire to meet matz」って表現が泣けるね。でも、なんでPHPでサイト作っとんのじゃいっ。eRubyでさくっと作らんかい。

ftpup

前田さんのサイトをウロウロしてたら、ftpupの1.3.4を見つける。RAAに入ってないってことは発禁ものか?(なんだそれ) ftplibからnet/ftpに変えたのかな〜、と思ったら違いました。あれれ。warningが出るから気になっていたんだけどね。自分でやれというお告げか。時間ないんだけど……。

mod_ruby、eRuby

今まであまり真面目に使っていなかったmod_rubyを使う必要が出てきたので(また泥縄かい)、いろいろ試していたら、Kondaraのmod_ruby RPMはeRuby readyじゃなかったということがわかって愕然。動かないわけだよー、とほほ。仕方がないので野良ビルドすることに。ちなみにeRuby RPMも共有ライブラリ化されていなかったので、こっちも野良る必要がある。これを解決するには、eRubyをruby-erubyruby-eruby-develに分けて、mod_rubyruby-eruby-develに依存させればいいんだな。方針はわかってもSPECファイル書けないんだけどさ(Kondara-develに参加しろって話もある)。

というわけで野良りくらりと行こう(←ギャグ?)。まず、eRubyとmod_rubyをアンインストール。

% sudo rpm -e mod_ruby ruby-eruby

続いてeRubyの最新版をビルド、インストール。

% tar zxf eruby-0.1.3.tar.gz
% cd eruby-0.1.3
% ./Makefile.RB  --enable-shared --default-charset=EUC-JP
% make
% sudo make install
% sudo cp /usr/bin/eruby /home/httpd/cgi-bin/eruby

/usr/local/*じゃなくて/usr/*に入っちゃったけどいいや。次はmod_ruby。

% tar zxf mod_ruby-0.2.2.tar.gz
% cd mod_ruby-0.2.2
% ./Makefile.RB --enable-eruby
% make
% sudo make install

お次。/etc/httpd/conf/httpd.confで以下の設定。CGI版のeRubyも使えるように策を巡らす。サフィックスが.rhtmlだとCGI、.rxhtmlならmod_ruby。

LoadModule ruby_module        modules/mod_ruby.so
AddModule mod_ruby.c
AddType application/x-httpd-eruby-cgi .rhtml
Action application/x-httpd-eruby-cgi /cgi-bin/eruby
<IfModule mod_ruby.c>
AddHandler ruby-script .rbx
AddType application/x-httpd-eruby .rxhtml
</IfModule>

以下のような内容のファイルを2つ作って(名前はtest.rhtmltest.rxhtml)、前者が「CGI/1.1」と出ることでCGI版、後者が「CGI-Ruby/1.1」と出ることでmod_ruby版であることを確認。そっかー、mod_ruby版だと、カレントディレクトリが違うんだなー、当たり前だけど。

<%= ENV['GATEWAY_INTERFACE'] %><br><%= Dir::pwd %>

悲しいのは、自宅か会社のローカル環境でしかこの恩恵にあずかれないことだ。やっぱ自前の回線とサーバが欲しいなぁ。

cgi.rb

以前作ったCGIに仕込んだLast-Modifiedヘッダが、ブラウザに認識されていないことに気づいた。気づいたのはアンテナのおかげ。調べてみると、日付が「Fri, 2 Feb 2000」だとダメで、「Fri, 02 Feb 2000」だとOK。RFCを調べて、dayは2桁固定らしいことを確認。月が変わって顕在化したのか。パッチを出したけど、よけいなことまでして前田さんにツッコミをうける。とほほ。最新のcgi.rbをGETするために、期せずしてRuby 1.7も入手しちゃうし。近づかないつもりだったのに(笑)。

万歩計

万歩計かぁ(「歩数計」と書いてあるけど、馴染めないので「万歩計」と書きます)。こりゃ買いだな。やっぱOmniRemoteに続くイロモノは買わないとね。OmniRemoteは、ときどき思い出したようにしか使わないけど、これなら毎日付けて歩けばいいだけだし、それなりに実用的かも。もっとも、自分の歩数のあまりの少なさに愕然とする気もするが。

もっとも、待ち望んでる本命のSpringboardは、実用性バシバシのBlueToothなんだけど。VisorにBlueToothなSpringboardを差して、BlueTooth対応のケータイ(PHSでも可)を買えば、無敵のモバイル環境でしょぉ? ちまちましたテンキーでメール書く必要もなければ、うざったいケーブルもない。理想的だ。早く出てくれBlueTooth!!