Installing Dovetail Classic ASP Web Applications on IIS7
Here at Dovetail I recently started developing on a Windows Server 2008 64bit OS. Today I wanted to install Dovetail Agent as a web application on IIS7. I ran into a few problems. After gnashing my teeth for a bit I found a path to goodness. My biggest problem was 64bit related. I hope this post saves you some time getting our web applications up and running.
ASP Needs To Be Enabled
I believe that by default when you are adding the Web Server (IIS) role to Windows Server 2008 that the ASP feature is not added by default.
Start Server Manager select the Web Server (IIS) Role. Click on Add Role Services. Make sure you have at least ASP and Server Side Includes and ASP.NET selected.
IIS 6 Management Compatibility
You may also want to select the IIS 6 Management Compatibility features which are found near the bottom of the list of features.
I have found the our installer technology does not play well with native IIS7. If you do not have the IIS 6 management features installed you will get an error when installing Dovetail SDK, Dovetail BOLT, or Dovetail Seeker.
You can get around this error by Clicking on Ignore.
Create a Application Pool
You need to run each of your Dovetail web applications in their own Application Pool. The first thing you should do is create an Application Pool with the Managed pipeline mode set to Classic
Running 64bit Windows?
If you are running a 64bit operating system you will need to Enable 32-Bit Applications for the Application Pool. Click on Advanced Settings… Set Enable 32-Bit Applications to True.
If you do not do this you will see errors related to Dovetail SDK Compatibility COM components not being found. Something like this:
…
An error occurred while creating object ‘FCApp’. FCApplication Initialization Failed.
Class doesn’t support AutomationActive Server Pages error ‘00000000’
Create object failed
…
Create a Web Application
Next up you need to create a web application for your Dovetail Classic ASP application. You should set its application pool to use the one you just created.
Right click on your web site and Add Application. Enter the Physical Path to your web application files. Select the Application Pool you just created and you will want to click on Test Settings… to make sure the web server credentials have the correct permissions to your web application files. What is right for you will depend on your environment. You can select Connect As to set the permissions as desired.
Script Errors Sent To The Browser
When you try to browse your web application you will likely run into this message telling you… “Something went going wrong but sorry I won’t tell you what.” That error looks like this:"
An error occurred on the server when processing the URL. Please contact the system administrator.
If you are the system administrator please click here to find out more about this error.
The helpful and slightly confusing link did solve the problem. Since when did Microsoft start linking to employee blogs rather than documentation? Not bad, just interesting. The error message is quashed as a security precaution. You can enable errors to be sent to the browser by executing this command line from the administrative command line.
%windir%system32inetsrvappcmd set config -section:asp -scriptErrorSentToBrowser:true
Enable Parent Paths
The next error you will likely run into is regarding Parent Paths. They need to be enabled when an asp page includes a script with a path containing a “..” An example would be:
<!–#include file="../include/inc_room.asp"–>
We already have a solution that shows how to do this for Windows Server 2003. Here is how to change this setting for IIS7.
Navigate to your web application in IIS7 Manager. Click on ASP. Set Enable Parent Paths to True. Click on Apply.
Voilà
There you go we have leaped all the hurdles to getting Dovetail Agent working on IIS7.