关于Nginx配置的Sinatra - 怎么了?

时间:2010-09-14 16:18:35

标签: ruby nginx sinatra

我或多或少地跟着this教程...我安装了乘客宝石,执行了乘客安装ginx模块,成功安装了nginx并将其插入配置中:

server {
  listen 80;
  server_name localhost;
  root /home/admin/sintest/public;   # <--- be sure to point to 'public'!
  passenger_enabled on;
}

在/ home / admin / sintest我有:一个空的公共文件夹, config.ru:

require 'sinatra'

set :env,  :production
disable :run

require './app.rb'    #the app itself

run Sinatra::Application

和测试sinatra app.rb:

require 'sinatra'

get '/' do
  "hello world!"
end

现在当我运行nginx并打开http://localhost时,我得到的是:403 Forbidden

我做错了什么?我错过了什么吗?

2 个答案:

答案 0 :(得分:4)

确保用户nginx正在运行(在大多数情况下,'nobody'或'www-data')有权读取您的主目录/ home / admin的内容。

此外,您可以查看nginx日志并准确读取错误。

答案 1 :(得分:2)

在http块中添加了passenger_root和passenger_ruby指令之前,我遇到了同样的错误。