473,405 Members | 2,185 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

IIS caching output of pages

Hi,

Our development web server (Win 2003 Server) seems to be caching the
output of various files (CSS and .aspx files) if they have no query
string. The moment you put a question mark in the URL, it's fine.

The problem is that if you modify a file, it still shows you the old
file unless you restart the website or IIS itself. It's definitely not
the browser that's caching the files - IIS is actually serving the wrong
file.

Is there some way to disable this? Why doesn't IIS realise when the file
on it's local filesystem has been modified and reload it?

I had a similar problem once before where my workstation had it's clock
a few minutes into the future, but this time it seems to be a different
problem as now all our machines are synchronised and are set to exactly
the same time.

I'd be greatful if someone can tell me how to solve this very annoying
problem.

Thanks,

Nick...
Nov 18 '05 #1
8 2082
Nick Gilbert <ne**@nickgilbert.com> wrote in news:eCip6Vu9DHA.2392
@TK2MSFTNGP11.phx.gbl:
Our development web server (Win 2003 Server) seems to be caching the
output of various files (CSS and .aspx files) if they have no query
string. The moment you put a question mark in the URL, it's fine.


Have you proven its your webserver and not the browsers, or proxies?
--
Chad Z. Hower (a.k.a. Kudzu) - http://www.hower.org/Kudzu/
"Programming is an art form that fights back"
Nov 18 '05 #2
Hi Nick,
Thanks for posting in the community!
From your description, you found that the files on your IIS Serve such as
(css or aspx files) are always cached and won't be the latest version if it
is modified and requested by client unless appending querystring after the
request url, yes?
If there is anything I misunderstood, please feel free to let me know.

Based on my experience, the such static files and resources such as images,
css files , js files ...etc are all by default cached on the client in the
temporary foler rather than on the serverside. For example, if a user visit
a certain page and the page contains some images and refernce some certain
css or js files. Then the browser will download these resources and cached
in the local disk and next time the page is refreshed (request again) these
resoures files won't be downloaded again from serverside but retrieved from
local cache disk.
So as for your situation, I think the problem you met is likely caused by
the client's cache. And as you've mentioned that this can be avoided( force
the browser to download the file from serversdie everytime the page is
requested) if you append a querystring(need to be different everytime)
after the page's url. So if you'd like the page's refernced resources files
to be downloaded everytime from serverside(the latest version), I think you
can append a tempstamp as querystring after the certain resource file's
url. For example,
if we use a css file as below:
src="common.css"
then now, we replace it as this:
src="common.css?version=<% timestamp %>"

Thus, everytime the page is requested, the css file will be retireved from
serverside (its latest version). How do you think of this?

In addition ,here are some tech articles on browser's cache:
#HOWTO: Prevent Caching in Internet Explorer
http://support.microsoft.com/?id=234067

#How to Use Pragma: No-cache with IIS and IE
http://support.microsoft.com/?id=165150

Hope they're also helpful.

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #3
Thanks Steven, but it's definitely IIS that's caching the web pages -
not the client. We have verified this by disabling caching in IE,
looking at the pages from other machines or browsers and by telnetting
into the server and looking at the raw HTTP response (which shows the
old data). The *only* way to force the new page to display, is to
restart the website in IIS or reboot the whole server.

Why is IIS (or the file system) caching the pages and how can we stop
this?

Nick...

v-******@online.microsoft.com (Steven Cheng[MSFT]) wrote in message news:<ge**************@cpmsftngxa07.phx.gbl>...
Hi Nick,
Thanks for posting in the community!
From your description, you found that the files on your IIS Serve such as
(css or aspx files) are always cached and won't be the latest version if it
is modified and requested by client unless appending querystring after the
request url, yes?
If there is anything I misunderstood, please feel free to let me know.

Based on my experience, the such static files and resources such as images,
css files , js files ...etc are all by default cached on the client in the
temporary foler rather than on the serverside. For example, if a user visit
a certain page and the page contains some images and refernce some certain
css or js files. Then the browser will download these resources and cached
in the local disk and next time the page is refreshed (request again) these
resoures files won't be downloaded again from serverside but retrieved from
local cache disk.
So as for your situation, I think the problem you met is likely caused by
the client's cache. And as you've mentioned that this can be avoided( force
the browser to download the file from serversdie everytime the page is
requested) if you append a querystring(need to be different everytime)
after the page's url. So if you'd like the page's refernced resources files
to be downloaded everytime from serverside(the latest version), I think you
can append a tempstamp as querystring after the certain resource file's
url. For example,
if we use a css file as below:
src="common.css"
then now, we replace it as this:
src="common.css?version=<% timestamp %>"

Thus, everytime the page is requested, the css file will be retireved from
serverside (its latest version). How do you think of this?

In addition ,here are some tech articles on browser's cache:
#HOWTO: Prevent Caching in Internet Explorer
http://support.microsoft.com/?id=234067

#How to Use Pragma: No-cache with IIS and IE
http://support.microsoft.com/?id=165150

Hope they're also helpful.

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #4
Hi Nick,
Thanks for your response. Based on my further research, there does seems to
have a certain issue on the IIS Server, but it is used to focus on win2000
server, here is the kb article on it:

#FIX: IIS Does Not Refresh the File Cache for Non-Virtual Root Directories
http://support.microsoft.com/?id=329459

Please have a check to see whether it could provide some help or clues on
this issue. In addtion, I've searched some other articles on setting cache
via page's http header:

#How to Modify the Cache-Control HTTP Header When You Use IIS
http://support.microsoft.com/?id=247404

#HOW TO: Prevent Web Caching in Windows 2000
http://support.microsoft.com/?id=311006
Hope they're also helpful.
Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #5
Hi Nick,

Have you had a chance to check out the items I provided in the last reply
or have you got any further ideas on this issue?
If you have any further questions, please feel free to let me know.
Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #6
Thanks, but these articles pertain to Windows 2000 and we are actually
running Windows Server 2003 Standard Edition. We are still
experiencing this problem so if you have any other ideas, please let
me know!

Nick...

v-******@online.microsoft.com (Steven Cheng[MSFT]) wrote in message news:<4n**************@cpmsftngxa06.phx.gbl>...
Hi Nick,
Thanks for your response. Based on my further research, there does seems to
have a certain issue on the IIS Server, but it is used to focus on win2000
server, here is the kb article on it:

#FIX: IIS Does Not Refresh the File Cache for Non-Virtual Root Directories
http://support.microsoft.com/?id=329459

Please have a check to see whether it could provide some help or clues on
this issue. In addtion, I've searched some other articles on setting cache
via page's http header:

#How to Modify the Cache-Control HTTP Header When You Use IIS
http://support.microsoft.com/?id=247404

#HOW TO: Prevent Web Caching in Windows 2000
http://support.microsoft.com/?id=311006
Hope they're also helpful.
Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #7
Hi Nick,

Thank you for the response. Regarding on the issue, I am
finding proper resource to assist you and we will update as soon as posible.

Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security(This posting is provided "AS IS",
with no warranties, and confers no rights.)

Nov 18 '05 #8
Hi Nick,

Thanks for your response. As for the KB, since it is still under reviewing
so we can't get it via the public url. And about the hotfix, it has been
mentioned in it that you need to call the PSS for it:
------------------------------------------------
To resolve this problem immediately, contact Microsoft Product Support
Services to obtain the hotfix. For a complete list of Microsoft Product
Support Services phone numbers and information about support costs, visit
the following Microsoft Web site:

http://support.microsoft.com/default.aspx?scid=fh;[LN];CNTACTMS:
http://support.microsoft.com/default.aspx?scid=fh;[LN];CNTACTMS

---------------------------------------------------
So the url only provide the address to find the contact info of the PSS.

In addition, have you also checked another suggestions in my former reply?
-------------------------------
In addtion, you should also verify whether or not this is a kernel mode
caching issue you're dealing with by temporarily disabling the kernel mode
cache (UriEnableCache=0, etc.). For details on this, refer to
http://support.microsoft.com/?id=820129.
---------------------------------

Thanks.
Regards,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Get Preview at ASP.NET whidbey
http://msdn.microsoft.com/asp.net/whidbey/default.aspx

Nov 18 '05 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Martin | last post by:
Hi. I had a very frustrating afternoon and evening but I have got it all under control now so all of a sudden I am in a good mood. I want to share some insights on output caching with you lot. ...
4
by: Captain Chaos | last post by:
Is it Possible to Cache Pictures JPG/BMP on the Client Browser ? The other Elements of the Page should not being cached because they change. Is it possible to cache parts of a page on the...
3
by: Janaka | last post by:
Hi All, I'm having a problem with Page Output caching on a page that contains a DataGrid. Basically the page pulls up some data for sales information from the DB. Some of this has to be...
3
by: moondaddy | last post by:
I have a site where I have only one page and lots of user controls. Rather than passing parameters into the page (mysite/default.aspx?MenuID=123), I pass in a url like this...
10
by: BillGatesFan | last post by:
I'm trying to understand ASP.NET caching. I set the Page Output directive to VaryByParams= None and the duration = 60. Now whenever users hit my web app they can see each others data. Is there...
1
by: Ben Fidge | last post by:
What are best practices for page output caching on pages that are dynamically generated from database tables. Our site has left-hand navigation that is comprised of dynamically generated menus...
5
by: Raj | last post by:
What is the purpose of file system caching while creating a tablespace? Memory on the test server gets used up pretty quickly after a user executes a complex query(database is already activated),...
2
by: UJ | last post by:
We are about to move our web site to be more dynamic - people will be editing things like text strings on a page. This stuff won't change very often. I was wondering if Output Caching would be...
2
by: Ken Fine | last post by:
I have a question about ASP.NET output caching. I want to use screen scraping as a temporary hack to pull in some complex Classic ASP-rendered content into some ASP.NET pages: protected String...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.