Rails 3和FCGI?

时间:2010-07-21 03:56:24

标签: ruby-on-rails ruby fastcgi

我想为朋友制作应用程序,但他有共享托管,唯一的选择是fcgi,我找不到任何关于如何做的文档。反正在FCGI上运行rails 3了吗?

2 个答案:

答案 0 :(得分:7)

加入public / whatever.fcgi

#!/usr/bin/ruby

require_relative '../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(YOURAPPNAME::Application)

检查示例应用here

答案 1 :(得分:4)

Rails 3构建在Rack和Rack之上,提供了一个FastCGI处理程序。