There are two hard problems in IT: cache invalidation, naming things and off-by-one errors.
You can eliminate the cache invalidation problem by not reusing old names for new things.
Except that they‘re colliding all the time with that tiny problem that the world isn‘t pure... People expect the same page at the same URL, with different content, tomorrow, so good luck choosing a different one than the one they have bookmarked and that ranks on Google.
Caching doesn‘t get any less hard by trying to define the problem away.