2012-05-24 28 views
2

我遵循install instructions,直到配置部分在hostmonster上安裝redmine 2。 當運行domain.com/redmine我總是500錯誤Hostmonster apache fcgi上的Redmine 2:Rails應用程序未能正常啓動

Rails application failed to start properly 

我還沒有任何日誌有關此錯誤在日誌/ 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. 

我的管理平臺應與FCGI工作,所以這裏是我的公共/的.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) 

是否有任何配置錯誤?

回答

1

是否都安裝了正確的寶石?

這裏是我的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 
<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> 
# 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 
<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> 

# 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。

+0

感謝分享文件,但我現在有乘客的錯誤!我認爲Passenger在Hostmonster上不可用。是嗎? – addex03

+0

它顯然不是:http://railsforum.com/viewtopic.php?id=41623 - http://railsforum.com/viewtopic.php?id=39146 –

+0

@Gjergj Shelija非常感謝!你剛剛在我的頭上爲我節省了很多頭髮,我即將放棄在我的服務器上設置redmine並保留本地版本,但感謝你讓我工作:) –

相關問題