7

理想

rvmを使用すると、1つのWebサーバーに複数のRubieを配置でき、ある種のサーバー構成を通じて、プロジェクトごとに異なるRails / Sinatra/etcアプリにRubyバージョンを割り当てることができるのは素晴らしいことです。

rvmのドキュメントから、Passengerは一度に1つのRubyでしか動作しないことを認識しています。:(

妥協

それができない場合は、少なくともプロジェクトをRuby1.8またはRuby1.9インタープリターに割り当てることができる方法を考案できると便利です。Nginxをリバースプロキシとして使用すると、ApacheとNginxを同じボックスで実行できることを読みました。それでは、Apache + Passengerで1つのRubyを使用し、Nginx + Passengerで別のRubyを使用することは可能でしょうか?たぶん、NginxでPassenger以外のものを使用しますか?

私は間違った木を吠えていますか?

この問題に対する良い解決策がありませんか?私は悪夢のような構成の状況に足を踏み入れていますか?私が望んでいることは実行可能でさえありますか、それとも別のRubyバージョンを実行するために別のボックスを実行する必要がありますか?

4

6 に答える 6

2

この投稿を確認してください: Phusion Passenger & running multiple Ruby versions from the official Phusion blog. Passenger Standalone をリバース プロキシとして使用することで問題を解決します。

于 2011-03-15T10:01:54.677 に答える
1

NginxでThinまたはUnicornを使用できます。プロジェクトごとに ruby​​ のバージョンを設定するための神のスクリプトやその他の起動スクリプトを作成することもできます (または、単純に Thin/Unicorn を手動で起動することもできます)。

于 2010-06-07T16:49:07.780 に答える
1

複数の小さな仮想マシンを使用しますか?

于 2010-06-09T21:44:56.457 に答える
0

すべてのプロジェクト(または少なくとも1つのサーバー上のプロジェクト)を同じルビーバージョンに保持するのはどうですか?古いバージョンを使用していますか、それとも古いプロジェクトをアップグレードしていますか?

このようにして、問題が最も少なくなると思います。

于 2010-06-06T18:02:26.430 に答える
0

Mac OS X を使用している場合は、POW!をチェックしてみてください。、複数のルビーを処理できます。hoofと呼ばれる Linux の代替手段があります。これはまだ開発されていませんが、近づきつつあります。

于 2012-01-15T23:57:53.157 に答える
0

妥協は可能です。これにはさまざまな方法がありますが、おそらく最も簡単な方法は、リバース プロキシと chroot された ruby​​+webserver+rails のインストールを必要なだけ組み合わせることです。

于 2010-06-09T21:42:56.130 に答える