script/server -e production
を使用して、Rails本稼働モードで起動しました。エラーは発生しませんでした。しかし、本稼動モードであるかどうかを確認するにはどうすればよいですか? 、および開発で行った同様のエラーページが表示されました。
実稼働モデルでは、/ publicフォルダーにある404エラーページが表示されると考えました。
実稼働モードで起動しなかったということですか?
ご協力いただきありがとうございます。
2つの簡単な方法:
tail -f log/production.log
アプリにアクセスした後にそのログに入力されているエントリがある場合は、本番モードです。
2番目の方法:
ビューの1つ(おそらくレイアウトが良い)で、追加するだけ
<%= "Environment: #{Rails_ENV}" %>
そして、それはあなたが実行している環境を示します。
編集
リクエストが「ローカル」(ローカルホストまたは127.0.0.1から)であると見なされる場合、どの環境でも実際のエラーページの代わりにデフォルトの例外ページが表示されます。これをApplicationController
に追加することでオーバーライドできます
def local_request?
false
end
このメソッドは、ドキュメントの api にあります。
Rails 3.1+、Rails.env.production?
は、運用中にtrue
を返します。
Rails.env.production? #=> true
Rails.env.staging? #=> false
Rails.env.development? #=> false
最新のRailsバージョン(3 +)、Rails.env
は、環境をString
として返します。
Rails.env #=> "production"
Boolean
を返す各環境に役立つアクセサーもあります。
Rails.env.production? #=> true
Rails.env.staging? #=> false
Rails.env.development? #=> false
コマンドラインで「Rails console
」と入力し、次に「Rails.env
」と入力します。
Railsサーバーを再起動し、コマンドラインの2行目を読むと、はるかに簡単になりました。
ランニング Rails s -e production
出力:
=> Booting Puma
=> Rails 4.2.4 application starting in `production` on http://localhost:3000
この例にはWebrickがありましたが、サーバーを変更すると名前に置き換わる方法を理解していない人もいました。明確にするために更新されました。