我在运行 sinatra 服务器时遇到问题。
我安装了 RVM 并编写了一个简单的 sinatra 应用程序,来源如下。我也创建了 public + tmp + tmp/restart.txt 文件夹。我在这里关注了一些答案/关于如何设置 GEM_PATH/GEM_HOME 的文章。
该站点使用“Passenger(仅限 Ruby/Python 应用程序)”选项定义。
如果我使用 SSH 中的命令行运行独立乘客,它可以在端口 3000 上正常工作(使用公共 URL,例如http://domain.com:3000)。所以这意味着网站很好,宝石可用,只是与Passenger的连接失败了。
我什至看不到来自 apache 的日志来查看问题所在。/home/user/domain.com/http/error.log 为空,access.log 填满 500s。浏览器中的错误是500,内部服务器错误,没有任何线索。
我安装 RVM 的用户是该帐户的完全管理员。
我错过了什么?
# config.ru
# I made sure the path is correct and that all the gems I need are installed there
ENV['GEM_PATH'] = '/home/<MY USERNAME>/.rvm/gems/ruby-1.9.3-p362'
# I tried also setting GEM_HOME instead and with GEM_PATH
require 'rubygems'
Gem.clear_paths
require 'sinatra'
require File.expand_path('../server.rb', __FILE__)
run Sinatra::Application
# server.rb
require 'sinatra'
get '/' do
"Worked on dreamhost"
end
get '/foo/:bar' do
"You asked for foo/#{params[:bar]}"
end