With self-signed SSL certificates, Chrome ignores all caching directives and reloads the content.
Issue
In a non-production environment (or pre-golive production environment), you are using an invalid or self-signed SSL certificate. You notice that when accessing the site via https, no responses from the web server (AEM dispatcher) are getting cached in Chrome browser.
Even if you have set Cache-Control: max-age=... header and Last-Modified header is present, you still don't observe any caching. Also, you observe that the If-Modified-Since request header isn't sent from the Chrome browser when the same file is loaded again.
Cause
This is a known issue with Chrome browser. It does not cache responses if the HTTPS connection is using an invalid Certificate. See this bug report for details:
https://bugs.chromium.org/p/chromium/issues/detail?id=110649#c8
Resolution
Either purchase and install a proper SSL certificate or test the caching via http instead of https.