passengerの速さに興奮した。

今日は3月14日、ホワイドデーである。
しかし、そいう気分ではなかった。
地震発生4日後、まだまだ死亡人数が増える一方だった。
テレビをつけるたびに、悲しいニュースが、、、、、



本日、私が紹介したいのはpassengerだ。
まず、passengerとは何か?

>>Ruby on Rails の実行環境の一つ。
Apache 上のモジュールとして動作させることができる。
親切な CUI ダイアログ、簡単なインストール方法、Rails のエラーの表示方法等、新世代を感じることができる実行環境である。<<



passengerを利用する前には、Apachemongrelという組み合わせてRailsアプリを起動させようとした。Apacheは豊富な機能「アクセス制御、認証機能など」あるので、作ったRailsアプリに対していろんな公開アレンジをすることができる。さらにmongrelはシンプルなWEBサーバで速さに有名になっている。しかし、組み合わせるとどうなるか?



http://localhost/RailsApp1mongrelの公開PORTは3000」
http://localhost/RailsApp2mongrelの公開PORTは3001」
http://localhost/RailsApp3mongrelの公開PORTは3002」

という形で複数のRailsアプリを起動させようとした。

結果:mongrel側で2つの問題が起こった。


1つ目は 
http://localhost//RailsApp1という形でRailsApp1を起動するまでには
結構遅かった。これでWEBアプリとしては厳しいな〜と思った。


2つ目は
http://localhost:3000でも、RailsApp1が起動させてしまうのだ。
mongrelもWEBサーバなのでどうしてもportを公開してしまうがちである。portを公開されてしまうのは望ましくない,セキュリティホール面も考えるとね。そうしたらApacheのurl書き換えはどうかな〜と思ってhttpd.confを編集してみた。だめった。


http://localhost:3000/RailsApp1で書き換えできるのは「http://localhost:3000/」以降のURLだった。たぶんURL書き換えができると思うけど、そこまではいけなっかた。残念! 一時的に作業を中止した。


ある日、passengerがグーグルの検索結果に引っかかれちゃった。
使ってみようかな感じでインストールをしてみた。

インストールはここを参考した。
http://redmine.jp/tech_note/apache-passenger/
RubyのGemとしてインストールができるので簡単だった。


Railsアプリを複数起動してみた。
その設定はここを参考
http://blog.livedoor.jp/kaznobster/archives/1158745.html#

いつも困っている設定もすごく簡単だった。


実行した結果はすごく早かった。超うれしい!
今度、mongrelの代わりにこれを使うぞと思った。