0

要使用 sinatra 返回文件,我一直在使用:

  get '/:name' do
    x = File.open('c:/mywebsite/' + params[:name],'r')
  end  

传入的 url 是“ http://localserver:4567/myfile.html

它有效,但我觉得肯定有更好的方法,但我在 sinatra 网站上找不到首选机制。

4

2 回答 2

8

将静态文件放在应用程序目录中的 public/ 文件夹中

静态文件

静态文件从 ./public 目录提供。您可以通过设置 :public 选项来指定不同的位置:

设置 :public, File.dirname( __FILE__) + '/static'

请注意,公共目录名称不包含在 URL 中。文件 ./public/css/style.css 以 example.com/css/style.css 的形式提供。

来自: http ://www.sinatrarb.com/intro.html

于 2009-11-10T19:19:19.977 回答
2

这是静态文件吗?如果是这样,我会把它放在应用程序的public目录中。您可以在此处阅读有关静态文件的更多信息(向下滚动页面大约四分之一以找到标记为“静态文件”的部分)。

于 2009-11-10T19:21:06.510 回答