Here is one very typical issue that bring you to this blog.
Issues, I have one asp.net application with nothing special, for the performance consideration, we turn on the output cache. somehow, the same page never got cached on some servers, and It did cached on most servers. of vice versa.
short answer, It has nothing to be with the IIS Version. It’s All about HTTP Cookies and .net Framework version. Let’s put a very basic Page.
just turn on the output cache using the most simple way,
for the code, we just send out some cookie,
Let’s start from some server that it works,
1st time you hit the url, get a initial access time.
Why? I did a lot check, and find out the reason is simple. IT’S BECAUSE OF THE .NET FRAMEWORK VERSION.
In earlier verison of the FX, if you check the ouputCacheModule , it will cache response without checking the cookie value, that means even response has a server side cookie, it will still cache the response.
But for newer version, it will simply ignore the cache insert if response has cookie associated.
my old version is, .4209, it never check cookie when cache response. that means you may see other people’s response (like login name?)
new version,.5456, it will check cookie which is more safe.
Hope it helps.