私の Rails 3.2 アプリは、リクエスト#stale?でIf-Modified-SinceHTTP ヘッダーを使用Last-Modifiedし、レスポンスでヘッダーを使用して、データを動的に生成するかどうかを決定します。curl -D headers.txtこれは、正しいIf-Modified-Since値が提供された場合は 304 応答が送信され、Last-Modifiedそれ以外の場合は要求データに沿ってヘッダーが送信されることを示すように、(webrick または unicorn_rails を使用するかどうかにかかわらず) 開発では非常にうまく機能します。
残念ながら、一度 nginx の背後にデプロイされると、 If-Modified-Since(正しいヘッダー値を提供して) unicorn (したがって Rails アプリ) に渡されることもLast-Modified、クライアントに伝達されることもありません。リクエストは無条件に生成され、レスポンスに適切なヘッダーが含まれることはありません。