Rails 4 个 Apache2 phusion 应用处于生产模式

Rails 4 Apache2 phusion app in production mode

我不知道我的应用程序是处于生产模式还是开发模式,当我在控制台中放置 rake 时它说 "Environment production" 但应用程序写入 log/development.log 并且应用程序将错误跟踪在浏览器中,或者如果你放了一个错误的路线,应用程序将所有路线都放在浏览器中,就像开发模式一样。

bundle exec 大约

关于您的应用程序环境

Rails version 4.2.4

Ruby version 2.1.2-p95 (x86_64-linux-gnu)

RubyGems version 2.2.2

Rack version 1.6.4

JavaScript Runtime therubyracer (V8)

Middleware Rack::Sendfile, Rack::Lock, , Rack::Runtime, Rack::MethodOverride, ActionDispatch::RequestId, RequestStore::Middleware, Rails::Rack::Logger, ActionDispatch::ShowExceptions, ActionDispatch::DebugExceptions, ActionDispatch::RemoteIp, ActionDispatch::Callbacks, ActiveRecord::ConnectionAdapters::ConnectionManagement, ActiveRecord::QueryCache, ActionDispatch::Cookies, ActionDispatch::Session::CookieStore, ActionDispatch::Flash, ActionDispatch::ParamsParser, Rack::Head, Rack::ConditionalGet, Rack::ETag, Warden::Manager

Application root /var/www/clients/client3/web37

Environment production

Database adapter mysql2

Database schema version 20160205114313

我认为您必须检查应用程序中的以下设置:

当我们使用 Passenger + Apache 部署 Rails 应用程序时,Passenger 默认将其 RailsEnv 设置为生产环境(RailsEnv 生产环境).您需要检查您的 apache conf 文件 rails enviromnet 是否在生产时设置。喜欢:

#web_app vhost setting
<VirtualHost *:80>
  ServerName example.com 
 DocumentRoot  /var/www/apps/web_app/public   
 RailsEnv production
<Directory /var/www/apps/web_app/public>    
     AllowOverride all        
     Allow from all
     Options -MultiViews   
     Options FollowSymLinks
</Directory>
</VirtualHost>

在 Rails 应用程序的根目录上设置 chmod 755,确保 production.log 存在并且它至少有 chmod 0666 权限。