Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article helps you work around the problem where Internet Information Services (IIS) serves stale content when you store the content on a Virtual Hard Drive (VHD).
Original product version: Internet Information Services 8.0
Original KB number: 2814040
Symptoms
Consider the following scenario.
- You are hosting a web application on IIS 8.0 or earlier.
- You stored the content for your web application on a VHD.
- When you make an update to the content, such as adding a new version of an image file or editing text on a page, you expect that the updated content will be served to incoming web requests.
In this scenario, the updated content is not display, and incoming web requests are responded to with the old content version.
Cause
This behavior occurs because File Change Notifications (FCN) do not traverse across mount points. Since HTTP.sys is not notified that a new version of the content is available, it continues to serve the version of the content it has stored in its kernel-mode cache.
Workaround
To work around this behavior, choose one of the following options:
Manually flush the HTTP.sys cache for the web application after making updates to the content stored on the VHD. To flush the HTTP.sys cache for the application, restart the application pool.
Do not store your content on a VHD.
Steps to reproduce
- Install IIS.
- Create new
VDisk(for example,C:\VDisk\Disks\DeDupand mount it toC:\inetpub\wwwroot\DeDup). - Copy a PNG file (2.png) to the new
VDisk. - Enable DeDup on
VDisk. - Optimize
VDiskby doingddpcli enqueue /opt /vol "C:\inetpub\wwwroot\DeDup"(FSUTIL reparsepoint queryC:\inetpub\wwwroot\DeDup\2.pngshows optimized). - Load
http://ServerName/DeDup/2.png. - Edit
C:\inetpub\wwwroot\DeDup\2.pngand save it. - Load
http://ServerName/DeDup/2.png- see the changes. - Optimize
VDiskagain (FSUTIL reparsepoint query "C:\inetpub\wwwroot\DeDup\2.png" shows optimized). - Load
http://ServerName/DeDup/2.png- see the changes. - Edit
C:\inetpub\wwwroot\DeDup\2.pngagain and save it. - FSUTIL reparsepoint query
C:\inetpub\wwwroot\DeDup\2.pngshows not optimized. - Load
http://ServerName/DeDup/2.png- don't see the newest changes! - Open file directly on content server to make sure the file contains both sets of changes - it does.