私は、dev/test環境で基本的にすべてのアプリケーション用のシンウェブサーバーを実行します。 MongrelをRails 2.xと一緒に使用したとき、私が入力しなければならなかったのはscript/server
だったので、私が選んだWebサーバを動かすことができました。しかし、Rails 3では毎回Thinを指定する必要があります。 rails s thin
の代わりにrails s
と入力するだけで、RailsアプリケーションでThinを実行する方法はありますか?Rails 3.0.xがデフォルトでThinを使用する方法はありますか?
答えて
、薄いが今gem 'thin'
があなたのGemfileにあるときrails server
を呼び出すことで、デフォルトで実行されます!このプルリクエストのおかげで:https://github.com/rack/rack/commit/b487f02b13f42c5933aa42193ed4e1c0b90382d7
私のために素晴らしい作品です。
あなたのアプリがあるディレクトリにthinをインストールして、シン・スタートを実行してください。完璧にここで動作します。 :)
http://www.softiesonrails.com/2008/4/27/using-thin-instead-of-mongrelを使用して、必要に応じて変更することができます。 (私が使ったもの)
これは可能です。
rails s
コマンドは、1日の終わりに動作しますが、これはRackに落ちてサーバーを選択させることです。デフォルトではRackハンドラはmongrel
を使用しようとし、mongrelが見つからない場合はwebrick
となります。ハンドラを少し修正するだけです。パッチをrails
スクリプト自体に挿入する必要があります。あなたがしていることは次のとおりです。script/rails
ファイルを開けてください。デフォルトでは、次のようになります。
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require 'rails/commands'
我々は右require 'rails/commands'
ラインになる前に、当社のパッチを挿入します。私たちの新しいファイルには、次のようになります。それは今雑種をしようとするとがある場合は、エラーが薄いためにしようとするだけにしてWEBrickに一緒に行くことを
#!/usr/bin/env ruby
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require 'rack/handler'
Rack::Handler.class_eval do
def self.default(options = {})
# Guess.
if ENV.include?("PHP_FCGI_CHILDREN")
# We already speak FastCGI
options.delete :File
options.delete :Port
Rack::Handler::FastCGI
elsif ENV.include?("REQUEST_METHOD")
Rack::Handler::CGI
else
begin
Rack::Handler::Mongrel
rescue LoadError
begin
Rack::Handler::Thin
rescue LoadError
Rack::Handler::WEBrick
end
end
end
end
end
require 'rails/commands'
お知らせ。今度はrails s
と入力すると、私たちは後の動作を取得します。 script/rails
で
次は同様に動作します:Railsの3.2rc2のよう
APP_PATH = File.expand_path('../../config/application', __FILE__)
require File.expand_path('../../config/boot', __FILE__)
require 'rack/handler'
Rack::Handler::WEBrick = Rack::Handler::Thin
require 'rails/commands'
- 1. 1つのRails 3.xアプリケーションで2つの異なるキャッシュストアを使用する方法はありますか?
- 2. Railsを使ってRailsでエラーをスタブする方法はありますか?
- 3. 動的なデフォルト引数を使用する方法はありますか?
- 4. lighttpdとthinを使用してサブURIでRails 3.1アプリケーションをホストする適切な方法は何ですか?
- 5. Railsのビルトインサーバがデフォルトで0.0.0.0でリッスンするのを止める方法はありますか?
- 6. SQLiteデータベースバージョン2.1または3.0を使用する必要がありますか?
- 7. Rails 3.0でアセットパイプラインを使用する
- 8. Rails 3.0でrsyslogdを使用する
- 9. cocos2d-x 2.xよりcocos2d-x 3.0を使用する利点は何ですか?
- 10. rails(thinまたはwebrickサーバー)で要求タイムアウトを設定する方法
- 11. クロムエクステンションでC++を使用する方法はありますか?
- 12. FlexでOpenLayersを使用する方法はありますか?
- 13. HTML5でフレームを使用する方法はありますか?
- 14. DataprocでBigQueryを使用する方法はありますか?
- 15. jscriptでGetProfilesDirectoryを使用する方法はありますか?
- 16. mod_wsgiをlocalhostで使用する方法はありますか?
- 17. ProGuardをMonoDroidで使用する方法はありますか?
- 18. iphone OS 3.0でステータスバーを非表示にする方法はありますか?
- 19. ASP.NET MVC 3.0サイトでデフォルト以外のdbを使用する方法
- 20. Rails 3.0アプリケーションでTwitterからBootstrapを使用するには?
- 21. Railsはconfig.action_dispatch.x_sendfile_headerを無視していますか? Thin + Nginxの使用
- 22. Rails 3.1:CoffeeScriptを使用する必要がありますか?
- 23. Mac OS Xでルビーのバージョンをデフォルトに変更する方法はありますか?
- 24. Sprockets 2 with Rails 3.0.x
- 25. Heroku Cedar - Static Assets - Rails 3.0.x
- 26. Railsはリクエスト間でクラス変数をリセットする方法がありますか?
- 27. Rails/Ruby:スタックトレースを短縮する方法はありますか?
- 28. デフォルトのパラメータ値をNinject 3.0で使用
- 29. Backbone.jsテンプレートでCoffeescriptを使用する方法はありますか?
- 30. mediawiki mathjaxエスケープを使用する必要があります。$ x $
アップデートとして、thin -V startは、各接続から端末に出力が表示されている場所で、通常はrailsサーバーを起動したときに表示される動作を模倣します。 – ddd
それはクールです。レールは薄いスタートを走らせるものは何もない? – tubbo