Ruby sinatra停止从公用文件夹加载文件

Ruby sinatra停止从公用文件夹加载文件,ruby,sinatra,settings,Ruby,Sinatra,Settings,我已经设置了公共filder,它工作正常,但突然sinatra停止从公共文件夹加载文件, 我在加载css和javascript文件时得到404 这是我的配置 set :root, File.dirname(File.dirname(__FILE__)) set :views, File.dirname(__FILE__) + "/../views" set :public_folder, File.dirname(__FILE__) + "/../public" 更新:

我已经设置了公共filder,它工作正常,但突然sinatra停止从公共文件夹加载文件, 我在加载css和javascript文件时得到404 这是我的配置

    set :root, File.dirname(File.dirname(__FILE__))
    set :views, File.dirname(__FILE__) + "/../views"
    set :public_folder, File.dirname(__FILE__) + "/../public"
更新:

当我的代码是

    get '/' do
        if Sources.all.size>0 then
            haml :home, {:layout => :"home-layout"}
        elsif request.ip == "127.0.0.1" then
            redirect '/setup/sources'
        else
            redirect '/nothing-here'
        end             
    end 

    get '/setup/sources' do
        if Sources.all.size == 0 then
            @list=FOps.ls(Dir.home).to_json
            haml :setup, {:layout => :"nosetup-layout"}
        else
            redirect '/setup/files'
        end
    end
它不会只与/setup/sources一起工作,它可以正常工作/

当我替换代码时 与

get'/'do
如果0小于1,则
haml:home,{:layout=>:“home layout”}
elsif request.ip==“127.0.0.1”然后
重定向“/setup/sources”
其他的
重定向“/此处无任何内容”
结束
结束
获取“/setup/sources”do
如果0小于1,则
@list=FOps.ls(Dir.home).to_json
haml:setup,{:layout=>:“nosetup布局”}
其他的
重定向“/setup/files”
结束
结束

它不会加载js和css localhost:4567/setup/sources,但在localhost:4567上加载很好

问题在于相对路径,在使用根路径后得到修复

问题在于相对路径,在使用根路径后得到修复

    get '/' do
        if 0 < 1 then
            haml :home, {:layout => :"home-layout"}
        elsif request.ip == "127.0.0.1" then
            redirect '/setup/sources'
        else
            redirect '/nothing-here'
        end             
    end 

    get '/setup/sources' do
        if 0 < 1 then
            @list=FOps.ls(Dir.home).to_json
            haml :setup, {:layout => :"nosetup-layout"}
        else
            redirect '/setup/files'
        end
    end