I have a legacy Java webapp ( Spring 3.1 MVC, legacy servlest and JSPs ) I have modified to log the user out after s/he clicks an external link to leave the web site.
The last screen(s) s/he was on are getting cached in the browser, enabling them to see some data by hitting their back button.
I could put no-cache headers into those screens, and it works, but the site was poorly designed with multipage forms, some with one result screen doing post requests to get to another screen.
If those screens aren't cached, a user hitting his/her back button will find themselves on a blank page going backwards and forwards leaving him/her nowhere with no other choice except to login again. A bigger mess.
Short of redesigning a site is there anything else I can do to prevent the user from using his/her back button, after logging out to get to cached screens?
I tried having the user go to a static redirect screen after logging out in the hope that s/he would just get bounced back to the external URL when using their back button, but at least two browsers don't appear to cache or navigate to such pages.
Any ideas would be welcome.
Even if I can't solve this problem, I may learn something for the future