我最近更新了Ruby 1.9.2(RVM),Sinatra 1.1和Passenger 3.0.0。我有一个简单的应用程序组成:
# config.ru
require 'rubygems'
require 'sinatra'
require 'app.rb'
run Sinatra::Application
# app.rb
require 'rubygems'
require 'sinatra'
get '/' do
erb :index
end
如果我使用ruby app.rb
每次启动按预期从终端运行应用程序。但是,乘坐Passenger我得到:no such file to load -- app.rb
。我有其他Rails应用程序运行良好的设置,并已将文档根设置为子公共目录。任何想法如何解决这一问题?谢谢!
答案 0 :(得分:17)
我在这里遇到了同样的问题:
# config.ru
require 'rubygems'
require 'sinatra'
require File.dirname(__FILE__) + "/app.rb"
run Sinatra::Application
答案 1 :(得分:9)
管理以解决问题。由于某种原因导致config.ru
需要相对于当前目录指定include。修改后的文件是:
# config.ru
require 'rubygems'
require 'sinatra'
require './app.rb'
run Sinatra::Application