Great explanation, and so typical for us devs to forget about the ancient compatibility reasons of old... in our SlickStack (LEMP) project, for dynamic content e.g. WordPress pages, we set nocache but enable server-side Nginx FastCGI caching, and for static files we set public, max-age=691200 which might also be overwritten by CDNs like Cloudflare.