Учитывая, что в Heroku Cedar нет кэширования http, предоставляемого Varnish, я бы хотел использовать Rack::Cache
.
Мне сказали, что у rails 3.1.1 по умолчанию Rack::Cache
активны, мне просто нужно убедиться, что в конфигурации:
config.action_controller.perform_caching = true
и мне нужно выбрать хранилище кеша, для этого эксперимента я использую:
config.cache_store = :memory_store
В действие страницы, которую я хочу кешировать, я добавил следующие строки:
response.header['Cache-Control'] = 'public, max-age=300'
response.header['Expires'] = CGI.rfc1123_date(Time.now + 300)
Этот код обычно работал с Varnish, первый запрос возвращал бы 200, а последующий (в течение 5 минут) возвращал 304
.
Этого не происходит с Rails 3.1 и стеком Heroku Cedar.
Я получаю эти заголовки в ответе, но последующие запросы возвращают 200 вместо 304.
Что я делаю не так? Спасибо.