2010-03-20 76 views
3
use Rack::Static, :urls => ['/stylesheets', '/images'], :root => 'public' 

run proc { |env| [200, { 'Content-Type' => 'text/html', 'Cache-Control' => 'public, max-age=86400' }, File.open('public/index.html')] } 

當我機架化時,我得到一個叫做Rack :: File:Class的私有方法`open'。真的看不到問題在哪裏。運行機架1.1。請幫助...嘗試提供靜態文件時機架出現錯誤

回答

3

有一個Rack::File類,由於Ruby查找名稱的方式,它在您的rackup文件中具有優先權。這不是你正在尋找的課程,你想要Ruby自己的File課程。通過使用前綴,可以直接引用該類別,而不用查找歧義。::

::File.open('public/index.html')