Friday, October 16, 2009

fixed my IIS "page not found error"

My local development environment uses IIS7, which has a different interface for managing HTTP handler mappings, and which uses different web.config settings to detect those mappings from IIS6. Some pages on the site require URL path rewriting to load pages that live in a non-root directory, but give the user the ability to navigate to them by creating the illusion that they live in the root directory. But the same site on a staging server using IIS6 was resulting in a page not found error. Because the error was happening before IIS could serve up the custom 404 page, the error was suspected to be a missing or bad setting in IIS.

Although this solution wasn't voted the highest or as "the answer" to the OP's question, it seemed to fix the problem and get rid of the error!

"If I understand the problem correctly, it sounds like you need add a "Wildcard Application Mapping" for your virtual directory. In other words, you want to forward all requests to any file extension to ASP.NET's ISAPI extension.

To do so, open the properties of your virtual directory. On the Virtual Directory tab (Home Directory tab if it's a web site), click the Configuration... button. Click the Insert... button next to the bottom list box in the dialog that shows up. In this dialog, choose "%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" as the executable and make sure to un-check "Verify that file exists" checkbox, since the files to be requested don't live in your virtual directory."