http request – Drupal 8 and 304 Responses / Revalidations

We have a Drupal 8 site, using nginx and Adv/Agg with typical settings.

Our server never returns 304 response codes to requests for html documents, even if the etag is unchanged. It always returns a 200 response.

The server will return 304s for image files, css, js, pdf etc. But never for html requests. Verified by doing “if-none-match” curls, reviewing access logs, etc.

Can someone tell us whether this is expected behavior?

If it is expected behavior – why? Isn’t the purpose of the etags to support revalidation?

If it is not expected behavior, any suggestions for troubleshooting would be appreciated.