diff options
author | arvida <arvid@winstondesign.se> | 2011-10-31 10:27:23 +0100 |
---|---|---|
committer | arvida <arvid@winstondesign.se> | 2011-10-31 10:27:23 +0100 |
commit | 2a7230aa997b19971b39812893d79ca3f6c3bb47 (patch) | |
tree | 2217181074310ec45a66fd4ec2fcc16a62e1771a /actionpack | |
parent | 964b2826c44888a310488fd3ce297b68e1dbf670 (diff) | |
download | rails-2a7230aa997b19971b39812893d79ca3f6c3bb47.tar.gz rails-2a7230aa997b19971b39812893d79ca3f6c3bb47.tar.bz2 rails-2a7230aa997b19971b39812893d79ca3f6c3bb47.zip |
Ensuring a HTTP Date header when setting Cache-Control's max-age with #expires_in
Diffstat (limited to 'actionpack')
-rw-r--r-- | actionpack/lib/action_controller/metal/conditional_get.rb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/actionpack/lib/action_controller/metal/conditional_get.rb b/actionpack/lib/action_controller/metal/conditional_get.rb index a5e37172c9..809894395d 100644 --- a/actionpack/lib/action_controller/metal/conditional_get.rb +++ b/actionpack/lib/action_controller/metal/conditional_get.rb @@ -70,11 +70,14 @@ module ActionController # # This method will overwrite an existing Cache-Control header. # See http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html for more possibilities. + # + # The method will also ensure a HTTP Date header for client compatibility. def expires_in(seconds, options = {}) #:doc: response.cache_control.merge!(:max_age => seconds, :public => options.delete(:public)) options.delete(:private) response.cache_control[:extras] = options.map {|k,v| "#{k}=#{v}"} + response.date = Time.now unless response.date? end # Sets a HTTP 1.1 Cache-Control header of <tt>no-cache</tt> so no caching should occur by the browser or |