1

Rails を Thin サーバーで実行するには、通常、thingem をGemfileに追加してから を実行bundle installし、開発サーバーを再起動します。

しかし、今は機能していません。この動作をデバッグするにはどうすればよいですか?

私はこれが機能していないことを意味します:

=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3001
=> Call with -d to detach
=> Ctrl-C to shutdown server

私はZeusgemを使用していますが、これは関連していますか? zeusサーバーを再起動しました。

4

3 に答える 3

3

Railsのバージョンに問題があり、更新され3.2.13て動作するようになりました。おそらく問題は他にありましたが、その更新により問題が修正されました。

于 2013-05-19T23:48:29.860 に答える
2

私はthinとzeusを使用しているので、多分私は助けることができます. あなたのGemile薄い中に入れて:development

group :development do
  gem 'thin'
end

自動的に取得する必要があります。ただし、ゼウスをまとめて再起動する必要がある場合があります。でゼウスを停止しcontrol-c、終了後、実行しzeus start、サーバーがゼウス画面で緑色になったら、実行しますzeus server

順番に試してみて、それがうまくいくかどうかを確認してください

また、zeus が に含まれていないことを確認してくださいGemfile。使用する場合はrvm、にインストールするだけですglobal gemset。Bundler は zeus を使用しないでください。

于 2013-05-19T22:37:20.433 に答える
1

編集:自己回答を見ただけですが、とにかくそれが機能した理由を説明します。

シンをレール サーバーとして使用すると、新しいバージョンのレール (3.2 以降) で動作します。

ただし、rails server実行している Rails 3.1.3 からの出力を見ると、. thinそのバージョンではfor の使用rails serverは実装されていなかったと思います。

あなたのRailsのバージョンでは、おそらくそれを理解するthinと仮定rails serverするのではなく、明示的に呼び出す必要があります.

私の提案は、Procfile を使用することです (開発と展開に関する優れたガイドを参照し、「rails サーバー」の代わりにweb実行するようにプロセスをセットアップしてください)。thinforeman / a Procfile を使用すると、どのサーバーを使用する必要があるか、または起動する必要がある他のサービス (redis、memcached など) について心配する必要がありません。さらに、Heroku にデプロイする場合は、とにかく Procfile が必要です。

于 2013-05-20T00:42:59.460 に答える