473,385 Members | 1,396 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,385 software developers and data experts.

IIS won't recognize if an ASP page has been changed

With Windows 2003 Server...

Imagine the following scenario: there is a simple ASP page, for example just
a single Response.Write statement. There is a virtual directory pointing to
the directory, where the ASP page is stored.

If I change this ASP page and hit the refresh button on the client browser.
I can then see the following behaviour:

[1] If the ASP page had been stored in the local file system of the IIS
Server, anything works fine. The client immediately sees the change.

[2] If the ASP page had been stored in the file system of another Windows
2003 server, the first refresh does not work. The old content is sent to the
browser. One has to refresh a second time, for getting the new contents.

The wrong result can be seen, even if the following scenario is performed...

- open new browser
- load ASP page
- change the ASP page on the server
- open a new browser
- load the ASP page

After loading the ASP page in a separate browser window, the old contents
can be seen.

Can anybody reproduce this behaviour? Is it already known? Is there a
solution?

Michael G. Schneider
Jul 19 '05 #1
8 4400
Michael G. Schneider wrote on 16 nov 2003 in
microsoft.public.inetserver.asp.general:
The wrong result can be seen, even if the following scenario is
performed...

- open new browser
- load ASP page
- change the ASP page on the server
- open a new browser
- load the ASP page

After loading the ASP page in a separate browser window, the old
contents can be seen.

Can anybody reproduce this behaviour? Is it already known? Is there a
solution?
Tap your favored tune on the F5 key.

More serious,
Is it already known?
Yes, this is normal behavour.
Is there a solution?


Shorten the expiring time of the page, perhaps even to zero:

<% Response.Expires = 0 %>

How else could the new browser[window] know that the cached page is not
reflecting the newest content anymore?

--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)
Jul 19 '05 #2
"Evertjan." <ex**************@interxnl.net> schrieb im Newsbeitrag
news:Xn********************@194.109.133.29...
Tap your favored tune on the F5 key. More serious,

Is it already known?


Yes, this is normal behavour.
Is there a solution?


Shorten the expiring time of the page, perhaps even to zero:

<% Response.Expires = 0 %>

How else could the new browser[window] know that the cached page is not
reflecting the newest content anymore?

It's probably my bad English. It seems, as if I did not ask my question
correctly. Maybe I should emphasize the following...

- I am sure, that this is no client side feature.

- If it were a client side feature, why should the refresh be immediately
visible, if the ASP page is saved in the IIS local file system?

- If it were a client side feature, why should the refreshed contents be
visible on the second trial, just some milliseconds after the first one?

- The observation cannot be seen under Windows 2000 Server. There the new
contents is always presented. It does not matter, whether the ASP page is
saved in the IIS local file system or on another server.

- I believe it has to do with how IIS in Windows 2003 Server handles virtual
directories located on another server.

Michael G. Schneider
Jul 19 '05 #3
Usually to prevent a *browser* from caching pages locally or on a proxy, you
*must* send cache-busting headers to the client.

However, depending on IIS settings, it has also been known to keep around
"sticky" old versions of a page in its cache (this is not specific to IIS 6
and is not directly related to the location of the virtual directory).
Sometimes you have to "kick" IIS to make it release its cache.

To see both techniques see http://www.aspfaq.com/2022
"Michael G. Schneider" <mg**********@mgs-software.de> wrote in message
news:eW*************@TK2MSFTNGP10.phx.gbl...
"Evertjan." <ex**************@interxnl.net> schrieb im Newsbeitrag
news:Xn********************@194.109.133.29...
Tap your favored tune on the F5 key.
More serious,

Is it already known?


Yes, this is normal behavour.
Is there a solution?


Shorten the expiring time of the page, perhaps even to zero:

<% Response.Expires = 0 %>

How else could the new browser[window] know that the cached page is not
reflecting the newest content anymore?

It's probably my bad English. It seems, as if I did not ask my question
correctly. Maybe I should emphasize the following...

- I am sure, that this is no client side feature.

- If it were a client side feature, why should the refresh be immediately
visible, if the ASP page is saved in the IIS local file system?

- If it were a client side feature, why should the refreshed contents be
visible on the second trial, just some milliseconds after the first one?

- The observation cannot be seen under Windows 2000 Server. There the new
contents is always presented. It does not matter, whether the ASP page is
saved in the IIS local file system or on another server.

- I believe it has to do with how IIS in Windows 2003 Server handles

virtual directories located on another server.

Michael G. Schneider

Jul 19 '05 #4
"Aaron Bertrand [MVP]" <aa***@TRASHaspfaq.com> schrieb im Newsbeitrag
news:eV****************@TK2MSFTNGP12.phx.gbl...
Usually to prevent a *browser* from caching pages locally or on a proxy, you *must* send cache-busting headers to the client.

However, depending on IIS settings, it has also been known to keep around
"sticky" old versions of a page in its cache (this is not specific to IIS 6 and is not directly related to the location of the virtual directory).
Sometimes you have to "kick" IIS to make it release its cache.

To see both techniques see http://www.aspfaq.com/2022


These techniques do not work in my scenario. Moreover the browser has the
"search for new versions of a page on each and every access" setting
(translation probably not 100% correct).

Here in my case, it is definitely a question of whether the ASP page is
stored locally or remotely. The good behaviour (local) and the bad behaviour
(remote) can be reproduced any number of times.

If anybody has some time to test this on his 2003-servers, I would be happy
to hear the results.

With Windows 2000 the IIS relied on change notification to find out, whether
a certain ASP page has been modified. Does anybody know, whether this has
changed?

Michael G. Schneider
Jul 19 '05 #5
I have seen this under Windows 2000 Server / IIS 5 too. I highly suspect
it's just plain old browser caching ;-)

Here's what you should try (I amended your list) :

- open new browser
- load ASP page
- change the ASP page on the server
- *** CLOSE BROWSER ***
- open a new browser
- load the ASP page

"Michael G. Schneider" <mg**********@mgs-software.de> wrote in message
news:%2****************@TK2MSFTNGP09.phx.gbl...
With Windows 2003 Server...

Imagine the following scenario: there is a simple ASP page, for example just a single Response.Write statement. There is a virtual directory pointing to the directory, where the ASP page is stored.

If I change this ASP page and hit the refresh button on the client browser. I can then see the following behaviour:

[1] If the ASP page had been stored in the local file system of the IIS
Server, anything works fine. The client immediately sees the change.

[2] If the ASP page had been stored in the file system of another Windows
2003 server, the first refresh does not work. The old content is sent to the browser. One has to refresh a second time, for getting the new contents.

The wrong result can be seen, even if the following scenario is performed...
- open new browser
- load ASP page
- change the ASP page on the server
- open a new browser
- load the ASP page

After loading the ASP page in a separate browser window, the old contents
can be seen.

Can anybody reproduce this behaviour? Is it already known? Is there a
solution?

Michael G. Schneider

Jul 19 '05 #6
"Mike Florio" <mi**@micro-point.com> schrieb im Newsbeitrag
news:vr************@corp.supernews.com...
I have seen this under Windows 2000 Server / IIS 5 too. I highly
suspect it's just plain old browser caching ;-)
No, unfortunately it is not browser caching
Here's what you should try (I amended your list) :


Ok, I tried, I even tried some more as...

- open new browser
- load ASP page
- change the ASP page on the server
- CLOSE BROWSER
- OPEN BROWSER
- DELETE COOKIES
- DELETE TEMPORARY FILES
- DELETE HISTORY
- CLOSE BROWSER
- open a new browser
- load the ASP page

I even tried more...

- open new browser
- load ASP page
- change the ASP page on the server
- GO TO ANOTHER PC
- open a new browser
- load the ASP page

And yes, the loading the ASP page after it has been modified, still shows
the old contents. The ASP page has to be requested twice, in order for the
new contents showing up.

Did you actually test this scenario (virtual directory on another 2003
server)?

Michael G. Schneider

Jul 19 '05 #7
I only tested that scenario under 2000 server, with virtual dirs *on the
same server*, and the close/open browser worked in that case.

When you try from another pc, is it on the same network ? Have you tried
accessing the site from an external ip ?
"Michael G. Schneider" <mg**********@mgs-software.de> wrote in message
news:uV**************@TK2MSFTNGP10.phx.gbl...
"Mike Florio" <mi**@micro-point.com> schrieb im Newsbeitrag
news:vr************@corp.supernews.com...
I have seen this under Windows 2000 Server / IIS 5 too. I highly
suspect it's just plain old browser caching ;-)


No, unfortunately it is not browser caching
Here's what you should try (I amended your list) :


Ok, I tried, I even tried some more as...

- open new browser
- load ASP page
- change the ASP page on the server
- CLOSE BROWSER
- OPEN BROWSER
- DELETE COOKIES
- DELETE TEMPORARY FILES
- DELETE HISTORY
- CLOSE BROWSER
- open a new browser
- load the ASP page

I even tried more...

- open new browser
- load ASP page
- change the ASP page on the server
- GO TO ANOTHER PC
- open a new browser
- load the ASP page

And yes, the loading the ASP page after it has been modified, still shows
the old contents. The ASP page has to be requested twice, in order for the
new contents showing up.

Did you actually test this scenario (virtual directory on another 2003
server)?

Michael G. Schneider

Jul 19 '05 #8
"Mike Florio" <mi**@micro-point.com> schrieb im Newsbeitrag
news:vr************@corp.supernews.com...
I only tested that scenario under 2000 server, with virtual dirs *on the
same server*, and the close/open browser worked in that case.
I have been using the 2000 server scenario for years. I do know that it
works.
When you try from another pc, is it on the same network ? Have you tried
accessing the site from an external ip ?


This is a small network. Three Windows 2003 servers, some workstations. All
belong to the same domain.

No I did not try it from outside. I have to make it work in this network,
anyway. This feature is very disturbing, when it comes to testing an ASP
application. There you often change an ASP page, and one wants to see the
results immediateley, and not after hitting submit twice.

Michael G. Schneider
Jul 19 '05 #9

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

Similar topics

6
by: HH | last post by:
I'm learning to design web applications with php, mysql, and apache from a book. I copied a sample application called guestbook 2000 that came with the CD in the book to my htdocs folder, but...
1
by: Michael G. Schneider | last post by:
On Nov 16th I asked about a problem where ASP pages, which were located on a UNC-share, would not work correctly. IIS would not recognize, if the ASP page has been changed. Nobofy had a hint...
4
by: Jonathan Upright | last post by:
Greetings to anyone who can help: I'm using WebMatrix to make ASP.NET pages, and I chose the "Editable DataGrid" at the project selector screen. As you may know, it defaults to the Microsoft...
9
by: David Veeneman | last post by:
I'm just getting started with ASP.NET, using VS 2005. As an exercise, I opened the root web site in VS 2005 and created a simple welcome page. I saved the page as Default.aspx and made sure that...
17
by: stubbsie | last post by:
Hi, I have redesigned our official public government website in .net and it has taken me a few months to redo. I have been the sole designer of the website from its humble beginnning a few years...
4
by: blackdog | last post by:
I load to *.aspx into web server, but my web only recognize Microsoft ..NET Framework Version:1.1.xxxxx It could not recognize Framework Version:2.0. Currently I have Microsoft Visual Studio...
3
by: NewToNetworks | last post by:
Hi, hello, help! I am new to networking so please forgive me if this is a simple question. I have been at this for hours to no avail. I"m trying to network my Mac G5, running OSX 10.4.7 Tiger, a...
78
by: Jeremy J Starcher | last post by:
(Request for Discussion) I've put together a guide that I hope will help novice coders avoid the same hair pulling that I went through. I'm open for comments about it. Have I missed the...
7
dlite922
by: dlite922 | last post by:
I need to do some sort of Locking mechanism at interface level, instead of DB Level. I know how MySQL table locking works, but that won't work in my scenerio. Requirements: When someone is...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 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 former...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
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
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?

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.