Я в настоящее время разрабатываю Основанное на стойке приложение и хочу перенаправить все запросы файла (например, filename.filetype) к указанной папке.
Стойка:: Статичный только поддерживает запросы файла на специальную папку (например, "/медиа").
Я должен записать собственное промежуточное программное обеспечение Стойки, или out-of-the-box решение существует?
Наилучшие пожелания
Чтобы перенаправить каждый запрос по определенному пути, используйте Rack :: File
(по какой-то причине этот класс отсутствует в последней документации, но он все еще является частью последней версии Rack ):
run Rack::File.new("/my/path")
Чтобы перенаправить каждый запрос и добавить HTML-индекс всех файлов в целевой каталог, используйте Rack :: Directory
:
run Rack::Directory.new("/my/path")
Чтобы объединить несколько каталогов или обслужить только некоторые запросы из целевой каталог:
map "/url/prefix" do
run Rack::File.new("/my/path")
end
# More calls to map if necessary...
# All other requests.
run MyApp.new
Возможно, вы сможете использовать Rack::File
напрямую. Вот config.ru
файл, который вы можете подключить к rackup, чтобы увидеть, как он работает:
app = proc do |env|
Rack::File.new('foo/bar').call(env)
end
run app