Я думаю, что исчерпал все, что смог найти, чтобы попытаться установить среду для моего приложения rails.
В .htaccess
RailsEnv production (produces a 500 server error)
В среде .rb
ENV['RAILS_ENV'] ||= 'production' #does not set RAILS_ENV
ENV['RAILS_ENV'] = 'production' #sets RAILS_ENV to 'production', but Rails.env stays at 'development'
Я использую bluehost ... но до вчерашнего дня все работало просто отлично ... Я не думаю, что внес какие-либо изменения ...
РЕДАКТИРОВАТЬ: Извините, забыл упомянуть, что это Rails v2
Кроме того, в зависимости от того, где я установил переменную RAILS_ENV в environment.rb, я получаю ошибки. Если я положу его туда, где мне говорят, что это должно быть, я получу ошибку:
[вторник, 26 июля 11:42:20 2011] [предупредить] [клиент x.x.x.x]
(104) Сброс соединения по пиру: mod_fcgid: ошибка чтения данных из
FastCGI сервер
[Вторник, 26 июля 11:42:20 2011] [ошибка] [клиент
x.x.x.x] Преждевременное завершение заголовков скриптов: dispatch.fcgi
# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '2.3.11' unless defined? RAILS_GEM_VERSION
ENV['RAILS_ENV'] = "production" unless (File.expand_path(File.dirname(__FILE__)) =~ /MyProductionFolder/).nil?
require File.join(File.dirname(__FILE__), 'boot')
ENV['GEM_PATH'] = '/home/usr/ruby/gems'
Если я добавлю его ПОСЛЕ загрузки, переменная будет установлена, но фактическая среда не изменится.
# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '2.3.11' unless defined? RAILS_GEM_VERSION
require File.join(File.dirname(__FILE__), 'boot')
ENV['RAILS_ENV'] = "production" unless (File.expand_path(File.dirname(__FILE__)) =~ /MyProductionFolder/).nil?
ENV['GEM_PATH'] = '/home/usr/ruby/gems'
РЕДАКТИРОВАТЬ # 3: Проверка ENV ['RAILS_ENV'], я вижу «производство», но при проверке непосредственно RAILS_ENV я вижу «развитие».