Hostmonster apache fcgi上的Redmine 2:Rails应用程序无法正常启动

我遵循安装说明,直到configuration部分在hostmonster上安装redmine 2。 运行domain.com/redmine时,我总是有500个错误

Rails application failed to start properly 

我没有任何关于log / production.log中的这个错误的日志 。 这里是文件:

 OpenIdAuthentication.store is nil. Using in-memory store. Creating scope :open. Overwriting existing method Version.open. Creating scope :active. Overwriting existing method User.active. DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in CollectiveIdea::Acts::NestedSet::Model instead. (called from include at /home1/iptechin/rails_apps/redmine200/lib/plugins/awesome_nested_set/lib/awesome_nested_set/awesome_nested_set.rb:58) DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in CollectiveIdea::Acts::NestedSet::Model instead. (called from include at /home1/iptechin/rails_apps/redmine200/lib/plugins/awesome_nested_set/lib/awesome_nested_set/awesome_nested_set.rb:58) Creating scope :open. Overwriting existing method Issue.open. Migrating to Setup (1) Migrating to IssueMove (2) Migrating to IssueAddNote (3) Migration lines...........................etc......... Migrating to AddAuthSourcesFilter (20120301153455) Migrating to ChangeRepositoriesToFullSti (20120422150750) OpenIdAuthentication.store is nil. Using in-memory store. Creating scope :open. Overwriting existing method Version.open. Creating scope :active. Overwriting existing method User.active. DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in CollectiveIdea::Acts::NestedSet::Model instead. (called from include at /home1/iptechin/rails_apps/redmine200/lib/plugins/awesome_nested_set/lib/awesome_nested_set/awesome_nested_set.rb:58) DEPRECATION WARNING: The InstanceMethods module inside ActiveSupport::Concern will be no longer included automatically. Please define instance methods directly in CollectiveIdea::Acts::NestedSet::Model instead. (called from include at /home1/iptechin/rails_apps/redmine200/lib/plugins/awesome_nested_set/lib/awesome_nested_set/awesome_nested_set.rb:58) Creating scope :open. Overwriting existing method Issue.open. 

我的redmine应该使用fcgi,所以这里是我的public / .htaccess

 # General Apache options <IfModule mod_fastcgi.c> AddHandler fastcgi-script .fcgi </IfModule> <IfModule mod_fcgid.c> AddHandler fcgid-script .fcgi </IfModule> <IfModule mod_cgi.c> AddHandler cgi-script .cgi </IfModule> Options +SymLinksIfOwnerMatch +ExecCGI RewriteEngine On RewriteRule ^$ index.html [QSA] RewriteRule ^([^.]+)$ $1.html [QSA] RewriteCond %{REQUEST_FILENAME} !-f <IfModule mod_fastcgi.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule> <IfModule mod_fcgid.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule> <IfModule mod_cgi.c> RewriteRule ^(.*)$ dispatch.cgi [QSA,L] </IfModule> ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly" 

这里是我的公共/ dispatch.fcgi

 #!/usr/bin/env ruby require File.dirname(__FILE__) + '/../config/boot' require File.dirname(__FILE__) + '/../config/environment' class Rack::PathInfoRewriter def initialize(app) @app = app end def call(env) env.delete('SCRIPT_NAME') parts = env['REQUEST_URI'].split('?') env['PATH_INFO'] = parts[0] env['QUERY_STRING'] = parts[1].to_s @app.call(env) end end Rack::Handler::FastCGI.run Rack::PathInfoRewriter.new(RedmineApp::Application) 

有没有任何configuration错误?

所有正确的宝石安装?

这里是我的dispatch.fcgi:

  #!/usr/bin/ruby # # You may specify the path to the FastCGI crash log (a log of unhandled # exceptions which forced the FastCGI instance to exit, great for debugging) # and the number of requests to process before running garbage collection. # # By default, the FastCGI crash log is RAILS_ROOT/log/fastcgi.crash.log # and the GC period is nil (turned off). A reasonable number of requests # could range from 10-100 depending on the memory footprint of your app. # # Example: # # Default log path, normal GC behavior. # RailsFCGIHandler.process! # # # Default log path, 50 requests between GC. # RailsFCGIHandler.process! nil, 50 # # # Custom log path, normal GC behavior. # RailsFCGIHandler.process! '/var/log/myapp_fcgi_crash.log' # require File.dirname(__FILE__) + "/../config/environment" require 'fcgi_handler' RailsFCGIHandler.process! 

和我的.htaccess

 # General Apache options <Ifmodulee mod_fastcgi.c> AddHandler fastcgi-script .fcgi </Ifmodulee> <Ifmodulee mod_fcgid.c> # AddHandler fcgid-script .fcgi </Ifmodulee> <Ifmodulee mod_cgi.c> # AddHandler cgi-script .cgi </Ifmodulee> # For security reasons, Option followsymlinks cannot be overridden. #Options +FollowSymLinks +ExecCGI Options +SymLinksIfOwnerMatch +ExecCGI # If you don't want Rails to look in certain directories, # use the following rewrite rules so that Apache won't rewrite certain requests # # Example: # RewriteCond %{REQUEST_URI} ^/notrails.* # RewriteRule .* - [L] # Redirect all requests not available on the filesystem to Rails # By default the cgi dispatcher is used which is very slow # # For better performance replace the dispatcher with the fastcgi one # # Example: # RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] RewriteEngine On # If your Rails application is accessed via an Alias directive, # then you MUST also set the RewriteBase in this htaccess file. # # Example: # Alias /myrailsapp /path/to/myrailsapp/public # RewriteBase /myrailsapp Options -MultiViews PassengerResolveSymlinksInDocumentRoot on #Change to your environment RailsEnv production RewriteBase / RewriteRule ^$ index.html [QSA] RewriteRule ^([^.]+)$ $1.html [QSA] RewriteCond %{REQUEST_FILENAME} !-f <Ifmodulee mod_fastcgi.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </Ifmodulee> <Ifmodulee mod_fcgid.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </Ifmodulee> <Ifmodulee mod_cgi.c> RewriteRule ^(.*)$ dispatch.cgi [QSA,L] </Ifmodulee> # In case Rails experiences terminal errors # Instead of displaying this message you can supply a file here which will be rendered instead # # Example: # ErrorDocument 500 /500.html ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly" #RewriteCond %{HTTP_HOST} ^redmine.acme-tech.net$ [OR] #RewriteCond %{HTTP_HOST} ^www.redmine.acme-tech.net$ #RewriteRule ^(.*)$ "http\:\/\/127\.0\.0\.1\:12018\/$1" [P,L] 

希望能帮助到你

GJ。

这是一个宝石路径问题。 由于没有这样的文件加载 – 绑定器/安装在Rails 3.2乘客我在/public/.htaccess中添加此行:

 SetEnv GEM_PATH /path-to-ruby-gems/ruby/gems