Search code examples
rubysinatrathin

Thin/Sinatra config/paths problem


I have Sinatra application which I want to use Thin webserver. I made following configs:

config/config.ru:

require 'rubygems'

require 'sinatra'
require 'sinatra/session'

require 'haml'
require 'sass'

require 'myapp.rb'

Rack::Handler::Thin.run Sinatra::Application, :Port => 4567

config/thin.yaml:

--- 
environment: development
chdir: /home/proj/myapp
pid: tmp/thin.pid 
rackup: config/config.ru 
log: log/thin.log 
max_conns: 1024 
timeout: 30 
max_persistent_conns: 512 
daemonize: true

I am using thin start -C config/thin.yaml in /home/proj/myapp to start thin with my application

PROBLEM:

Errno::ENOENT at /
No such file or directory - /home/proj/myapp/config/views/login.haml

I don't understand why it tries to look views in /home/proj/myapp/config/views/login.haml, when it needs to look in /home/proj/myapp/views/login.haml

When I am launching just: ruby myapp.rb everything works fine


Solution

  • The last line in config.ru should be:

    run Sinatra::Application