Имам кутия CentOS6, настроена на Vagrant, и се опитвам да стартирам среда на Sinatra + Unicorn + NGINX. Моят /etc/nginx/nginx.conf изглежда по следния начин:
upstream app1 {
server unix:/tmp/app1.sock fail_timeout=0;
}
server {
listen 80;
server_name 192.168.33.10;
location / {
if (-f $request_filename) {
break;
}
root /vagrant/workspace/public;
proxy_pass http://app1;
proxy_set_header Host $host;
}
location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
expires 1y;
}
}
и моят файл unicorn.rb изглежда по следния начин: @path = "/vagrant/workspace/"
worker_processes 1
working_directory @path
timeout 15
listen '/tmp/app1.sock' , :backlog => 64
pid "#{@path}tmp/pids/unicorn.pid"
stderr_path "#{@path}log/unicorn.stderr.log"
stdout_path "#{@path}log/unicorn.stdout.log"
preload_app true
и моето приложение Sinatra е просто здравей свят, така:
require "rubygems"
require "sinatra/base"
require "sinatra/reloader" if development?
require "logger"
require "unicorn"
class MainApp < Sinatra::Base
get '/' do
"hello world"
end
end
когато се опитвам да се свържа с 192.168.33.10 от локално, получавам 502 Gateway Error. Всякакви съвети биха били толкова полезни. Благодаря.
if development?
и в моя stderr.log пише/vagrant/workspace/main.rb:3:in '<top (required)>': undefined method 'development?' for main:Object (NoMethodError)
, някакви идеи? - person kgtekito   schedule 07.02.2014