5: mongrel server をデフォルトで走らせる。

Date 2010-8-22 23:25:39 | Topic: domUへRubyOnRails用サーバーを立てる

今までは web server(mongrel)を立ち上げるのにターミナルを使い、そこで rails アプリケーションのルートに移ってから $ ruby script/server で走らせていたけど、サーバーの立ち上げ時に走っていて欲しいので、/etc/rc.d/rc.local の最後に
/usr/local/bin/mongrel_rails start -d -e development -c /Rails/report -p 3000 を記入する。
-d はdeamonとして走らせる。
-e はdevelopment、productionなどの指定
-c は rails application のルート
-p はポート番号

これで再起動し、アプリケーションをテストすると、redirectする所で、You are being redirected. と表示され、実際のページにredirectされない。但しredirectの部分がlinkになっており、そこをクリックするとリダイレクトされるべきページが表示される。
ググッて見ると http://gist.github.com/471663 に解決があった。
ここのダウンロードをクリックし、gist471663-***.tar.gz(あまりに長いので途中を省略)をダウンロードし、解凍すると、mongrel.rbというファイルが出来るのでこの2行目(1行目は空行)を
if Rails.version == '2.3.8' && Gem.available?('mongrel', '~>1.1.5') && self.class.const_defined?(:Mongrel)
に変更して、rails application のルートの config/initializer にmongrel.rbとして保存し再起動すると直った。

注意:mongrelは1ポート1プロセスなので、誰かがアクセスしていると他の人は使えない。このためには mongrel_clusterをインストールすればいい。今は開発中なのでいいが、production移行時にはインストールせねば!!


This article comes from 錦稜会 KINRYOKAI
https://www.kinryokai.net

The URL for this story is:
https://www.kinryokai.net/article.php?storyid=51