1

On our website using IIS 8, we are serving done jpgs on an image management screen.The images are on a separate hard drive that is connected in IIS via a virtual folder. All the photos are named with the entity ID followed by the photo number. So:

Photo 1: 58935928.1.jpg
Photo 2: 58935928.2.jpg
Photo 3: 58935928.3.jpg

If I want to reorder photo 3 to photo slot 1, I have to rename photo 3 to 58935928.3.jpg.TEMP then rename photo 1 to 58935928.3.jpg and then 58935928.3.jpg.TEMP to 58935928.1.jpg. This works fine. However when viewing the page and refreshing it, the images returned for 58935928.1.jpg is still the old image before it was renamed. After around 5-10 minutes, a refresh will now show the correct images.

We thought this was a browsing caching issue. Ctrl-F5 force refresh did not fix it and setting no cache metadata on the page did not either. We noticed that when this occurs, and we go to different browsers, the images still display incorrectly. This lead us to thinking server side caching since a new browser instance is also getting the wrong image.

We went in iis and configured output caching to no cache on kernal and user just to see if it would fix it. No difference. We don't want to go so hard as to disable cache on everything, just jpgs would be fine.

Why is this happening? This is causing confusion for our users as they reorder the images and they are actually reordered on the file system but IIS seems to be serving the old image instead of the new one.

0 Answers0