304 not modified http server error code status messages are received when a requesting user has executed a condition specific request in the GET form. When this access is permitted and the original text hasn’t been altered, then the server usually responds back with the 304 not modified. This status code can not include the message body, and will have an empty line in the first part of the header field.
A 304 not modified response is required to include the date in the header field unless otherwise noted. However a clock-less source server can obey this rule, whereas clients and proxies may choose to add their own date field to a response received without this area already included.
304 HTTP Not Modified
Caches will function correctly when using this variables:
- ETag and/or Content-Location, if the header was sent in a 200 response to the same requested server.
- An Expire, Cache-Control, and/or Vary area, if the field differed from what was sent in a previous request.
A GET conditional request uses a strong cache validation system, and thus a response is recommended not to include any other header entries. However if this happens and the GET conditional request uses a weak cache validation system, then a response should not include other header entries. These strong cache validation systems help prevent discrepancies between a cached body and header.
A 304 not modified http response code indicates an entry that is not currently cached. A cache is required to not acknowledge the response and repeat the request again. If the cache does use a received 304 response to then update a cache entry, then the cache is required to update the same entry and show those changes in the response back to the 304 not modified display.