Classic ASP and IIS7
June 30, 2010
posted by Rick Barber
I have seen numerous blogs written over the past couple of years talking about some of the challenges migrating a classic ASP application from IIS 5 or IIS 6 to IIS 7 or IIS 7.5. However I still see a lot of new questions to various forums about these same issues. I would like to provide some guidance on the first couple of steps that you should take to learn more about what is really going on with your application.
First you should note that script errors no longer show up in the browser by default. Essentially any error that you get in classic ASP will throw a generic 500 error. You should enable errors to be sent to the browser while you are troubleshooting any issues that you are having. To do so open up IIS Manager on the server, select the server name in the left under Connections, and double click the ASP icon under IIS. Expand 'Debugging Properties' and change 'Send Errors to Browser' to True. You can also do this at an individual site level instead of the server level by selecting the site instead of the server in the left Connections pane.
You should note that if you are testing using Internet Explorer 8 you may also need to tweak the settings to properly see detailed error messages. In Internet Explorer 8 go to 'Tools' -> 'Internet Options' then click on the 'Advanced' tab. Scroll down to 'Show friendly HTTP error messages' and uncheck this box.
Secondly you should ensure that your application pool is running in Classic mode instead of Integrated mode. This will cause a large assortment of unexpected and unexplained behaviors in your classic ASP application. The default IIS7 installation defaults to Integrated mode for the application pools so you will most likely need to change it. To do that, right click on your application pool and select 'Advanced Settings...' Under the '(General)' section change the 'Managed Pipeline Mode' from Integrated to Classic. Click OK and your application will restart with the new changes.
Most other errors that you get from running a classic ASP application on IIS7.X can easily be resolved by searching the Internet for the specific error that you are getting.












