我有一个使用模块化方式配置的简单Sinatra应用程序。当我按照自述文件中推荐的使用
这是我的代码:
rackup -p 4567
启动应用时,位于public文件夹中的静态资源不会被提供。但是当我使用shotgun ./config.ru -p 4567
启动它时,它们会被提供。为什么会发生这种情况?这可能在生产中发生吗?这是我的代码:
# config.ru
require 'rubygems'
require 'bundler'
require 'sinatra'
require 'jammit'
Bundler.require
Jammit.package!
require File.expand_path('./stick.rb')
run Stick
这是应用程序的 Ruby 文件。
require 'sinatra/base'
class Stick < Sinatra::Base
get '/' do
haml :index
end
end
当 public 目录存在时,默认情况下会启用 :static 设置。
但第二种方法无法帮助我在 Thin 上运行。 - Andrei