The reason why old content might be shown is that it has been cached. And user's browser might take the content from cache. If it is not cached then user would get the new content every time he or she opens the site in browser.
I guess you want to have an option to force user's browser to show updated page even when the browser has the page in the cache. The page still might be cached but when you have new version you want user to see the new version.
I suggest to consider the following approach. You can add parameter to the page URLs on site and change this parameter when the content is changed. For example:
http://example.com/code.js?version=22
I use this approach for CSS and JS files. Normally they should be cached for long time may be for weeks or months. But when the file is updated user should get the new version.
This has nothing to do with normal cache control. But solves the task when you want you files and pages be cached and control when they should be updated.
Please let me know if you have any questions.