Mam dość prostą aplikację (tylko jeden plik index.html
i plik css - to naprawdę jest tylko statyczna strona) hostowany na Heroku.Jak ustawić nagłówki odpowiedzi HTTP (pamięci podręcznej) w aplikacji Sinatra hostowanej na Heroku
Używam Sinatry do hostowania go na Heroku. Sama "aplikacja" jest dość prosta:
require 'rubygems'
require 'sinatra'
get "/" do
File.read(File.join('public', 'index.html'))
end
Pytanie brzmi, w jaki sposób ustawić nagłówek odpowiedzi HTTP dla zasobów statycznych? W szczególności chciałem ustawić nagłówek Expires
dla celów buforowania.
EDIT: szukam dodanie nagłówka do aktywów statycznych (czyli ten, który mieszka pod /public
, jak obrazy tła, ikon, itp)
Jak to zrobić wtedy? Zakładając, że nadal chcę go hostować na Heroku. – ryanprayogo
Zauważ, że Heroku sugeruje "Cache-Control" w swoich dokumentach (zobacz http://docs.heroku.com/http-caching), a Headhunter jest tam hostowany. Użyłbym 'response ['Expires'] ='. Zauważ, że 'Expires' jest określona jako czas bezwzględny, nie w stosunku do żądania (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21) – awendt
Sinatra ma rzeczywiście pomocnika specjalnie dla tego : 'cache_control: public,: max_age => 60' –