If you use http handlers you might run into the same problem we had.
On ASP 2.0, IIS 5, Windows 2000 the default http handlers are called automatically when they are not handled by your handler.
On ASP 2.0, IIS 6, Windows 2003 the default http handlers do not get called and you receive a page error or missing content on your page depending on the content type.
Example of problem:
Let’s assume you have an HTTP handler that is configured in your web config file like this:
<httpHandlers>
<add verb="GET" path="ab*.jpg" type="WebLib.JPGHTTPHandler,WebLib"></add>
</httpHandlers>
The above handler will get called every time an “ab*.jpg” file will be requested.
That is to say a file that starts with “ab” and has the extension “.jpg”.
On IIS 5 when a file that has a “.jpg” extension and does not start with “ab” is requested, it will be handled by a default ASP.NET handler.
On IIS6 you will receive an error (in this case. jpg images will be missing from the requested page).
One way to solve this is to explicitly tell ASP.NET to call the ASP.NET static file handler for every file that has the same extension but is not handled by our handler.
<httpHandlers>
<add verb="GET" path="ab*.jpg" type="WebLib.JPGHTTPHandler,WebLib"></add>
<add verb="GET" path="*.jpg" type="System.Web.StaticFileHandler"></add>
</httpHandlers>
Note that the order of handlers in the above example is important. You should put the static file handler after your custom one! If you don’t, your handler will not get called, only the static file handler will get called for all .jpg files.
You can find more information about the problem and possible solutions at: http://support.microsoft.com/Default.aspx?kbid=909641