Got a fix ............
Webpage contents can be cached in a number of different places including the browser making the request, the Web server responding to the request, and any cache
capable devices, such as proxy servers, that are in the request or response stream. In asp.net the HttpCacheability Enumeration has a number of different settings with ServerAndNoCache being the one that was hardcoded into DotNetNuke. This setting ensured that content was cached at the server but all other machines are explicitly denied the ability to cache the response. Whilst on first look this looks very inefficent, as repeat page requests have to pull down fresh copies of repeated files, it's actually a security best practice. It ensures that if you log out, no
one can access your previous pages by pressing the back button, or viewing the temporary internet files.
However, this has the twin drawbacks of causing the "Warning: Page has Expired" warning to be shown when the back button is used, as well as impacting performance. Whilst the default setting is the best setting for sites with secure content, in many cases it can be overkill and can be safely reduced. With 3.3/4.3, this setting has now been exposed as a host level setting that can be altered by logging in as a superuser and going to Host
>Host Setting, expanding out Advanced Settings
>Other Settings and changing the Authenticated Cacheability value. Many sites would benefit from a better user experience and performance boost by changing to another value such as Public.
Nuke 4.8
Ø Login as Host
Ø Click on Host à Host settings
Ø Then Expand Advanced Settings à Expand
Performance Settings à Select PRIVATE (or any suitable except ServerandNoCache) from Authenticated Cacheability dropdown box à update it.