]> git.openstreetmap.org Git - rails.git/blobdiff - config/environments/production.rb
Refactor memcache connection handling
[rails.git] / config / environments / production.rb
index d99d3369cdec9a231415aafed769a3bb6ec5fbda..e517d224540d65db2fdd244de4c4fdcbd6d336fa 100644 (file)
@@ -1,7 +1,6 @@
 OpenStreetMap::Application.configure do
-  # Settings specified here will take precedence over those in config/environment.rb
+  # Settings specified here will take precedence over those in config/application.rb
 
-  # The production environment is meant for finished, "live" apps.
   # Code is not reloaded between requests
   config.cache_classes = true
 
@@ -9,39 +8,60 @@ OpenStreetMap::Application.configure do
   config.consider_all_requests_local       = false
   config.action_controller.perform_caching = true
 
-  # Specifies the header that your server uses for sending files
-  config.action_dispatch.x_sendfile_header = "X-Sendfile"
+  # Disable rack caching
+  config.action_dispatch.rack_cache = false
+
+  # Disable Rails's static asset server (Apache or nginx will already do this)
+  config.serve_static_assets = false
+
+  # Compress JavaScripts and CSS
+  config.assets.compress = true
 
-  # For nginx:
-  # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect'
+  # Don't fallback to assets pipeline if a precompiled asset is missed
+  config.assets.compile = false
 
-  # If you have no front-end server that supports something like X-Sendfile,
-  # just comment this out and Rails will serve the files
+  # Generate digests for assets URLs
+  config.assets.digest = true
+
+  # Defaults to Rails.root.join("public/assets")
+  # config.assets.manifest = YOUR_PATH
+
+  # Specifies the header that your server uses for sending files
+  # config.action_dispatch.x_sendfile_header = "X-Sendfile" # for apache
+  # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for nginx
+
+  # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
+  # config.force_ssl = true
 
   # See everything in the log (default is :info)
   # config.log_level = :debug
 
+  # Prepend all log lines with the following tags
+  # config.log_tags = [ :subdomain, :uuid ]
+
   # Use a different log path in production
   if defined?(LOG_PATH)
-    config.log_path = LOG_PATH
+    config.paths["log"] = LOG_PATH
   end
 
   # Use a different logger for distributed setups
-  # config.logger = SyslogLogger.new
+  # config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new)
 
   # Use a different cache store in production
   if defined?(MEMCACHE_SERVERS)
-    MEMCACHE = Memcached::Rails.new(MEMCACHE_SERVERS, :binary_protocol => true)
-    config.cache_store = :mem_cache_store, MEMCACHE
+    config.cache_store = :mem_cache_store, MemCache.new(:namespace => "rails:cache")
   end
 
-  # Disable Rails's static asset server
-  # In production, Apache or nginx will already do this
-  config.serve_static_assets = false
-
-  # Enable serving of images, stylesheets, and javascripts from an asset server
+  # Enable serving of images, stylesheets, and JavaScripts from an asset server
   # config.action_controller.asset_host = "http://assets.example.com"
 
+  # Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
+  config.assets.precompile += %w( map.js menu.js pngfix.js site.js swfobject.js )
+  config.assets.precompile += %w( openlayers.js )
+  config.assets.precompile += %w( large-ltr.css small-ltr.css print-ltr.css )
+  config.assets.precompile += %w( large-rtl.css small-rtl.css print-rtl.css )
+  config.assets.precompile += %w( browse.css theme/default/style.css )
+
   # Disable delivery errors, bad email addresses will be ignored
   # config.action_mailer.raise_delivery_errors = false
 
@@ -54,4 +74,8 @@ OpenStreetMap::Application.configure do
 
   # Send deprecation notices to registered listeners
   config.active_support.deprecation = :notify
+
+  # Log the query plan for queries taking more than this (works
+  # with SQLite, MySQL, and PostgreSQL)
+  # config.active_record.auto_explain_threshold_in_seconds = 0.5
 end