The If-Modified-Since
request HTTP header makes the
request conditional: the server will send back the requested resource, with a
200
status, only if it has been last modified after the given date. If
the request has not been modified since, the response will be a 304
without any body; the Last-Modified
response header of a previous
request will contain the date of last modification. Unlike
If-Unmodified-Since
, If-Modified-Since
can only be used
with a GET
or HEAD
.
When used in combination with If-None-Match
, it is ignored, unless
the server doesn't support If-None-Match
.
The most common use case is to update a cached entity that has no associated
ETag
.
Header type | Request header |
---|---|
Forbidden header name | no |
Syntax
If-Modified-Since: <day-name>, <day> <month> <year> <hour>:<minute>:<second> GMT
Directives
- <day-name>
- One of "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", or "Sun" (case-sensitive).
- <day>
- 2 digit day number, e.g. "04" or "23".
- <month>
- One of "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" (case sensitive).
- <year>
- 4 digit year number, e.g. "1990" or "2016".
- <hour>
- 2 digit hour number, e.g. "09" or "23".
- <minute>
- 2 digit minute number, e.g. "04" or "59".
- <second>
- 2 digit second number, e.g. "04" or "59".
GMT
-
Greenwich Mean Time. HTTP dates are always expressed in GMT, never in local time.
Examples
If-Modified-Since: Wed, 21 Oct 2015 07:28:00 GMT
Specifications
Specification | Title |
---|---|
RFC 7232, section 3.3: If-Modified-Since | Hypertext Transfer Protocol (HTTP/1.1): Conditional Requests |
Browser compatibility
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
See also
ETag
If-Unmodified-since
If-Match
If-None-Match
304
Not Modified