How To…Deploy to IIS7

Question

“How can I deploy the WebTier to IIS7?”

Deploying the WebTier to IIS7+

The following is a supplement to the Server Edition Developer’s Guide, installed to …RBServer\Developer’s Guide\RBServer.pdf.

IIS 7 security is tighter than prior versions of IIS. By default ISAPI modules are /not/ permited to run. Use the following steps to configure IIS 7 to allow your WebTier ISAPI module to run.

Configure IIS 7 ISAPI and CGI Restrictions

  1. Access IIS Manager. A tree view is displayed on the left containing a list of one or more server machines as the top level nodes. A list view is displayed on the right, below it are two buttons used to toggle between Features View and Content View.
  2. Select the tree node corresponding to the server machine from the treeview displayed in the left pane.
  3. Select the Features View for the list view on the right.
  4. Double-click the ‘ISAPI and CGI Restrictions’ list item. It is listed under the IIS—— section. (If you do not see the ‘ISAPI and CGI Restrictions’ item listed, then either you do not have the server node selected in the treeview or you do not have ISAPI support installed for IIS 7).
  5. From the ISAPI and CGI Restrictions page, press the Add… button that appears in the Actions pane on the right. A dialog is displayed. Specify the ISAPI module, description, and select the checkbox, Allow extension path to execute. Here is an example

Configure Handler Mappings

  1. Select the tree node corresponding to the server machine from the treeview displayed in the left pane.
  2. Select the Features View for the list view on the right.
  3. Double-click the ‘Handler Mappings’ list item that appears under the IIS section.
  4. Select the ISAPI-dll list item.
  5. Press the Edit Feature Permissions option that appears in the Action Pane. A dialog is displayed. Select the Read, Script, Execute checkbox items. Press OK to close the dialog.

Windows 64-bit – Config Application Pool

When using Windows 64-bit you need to configure an Application Pool to support 32-bit ISAPI apps.

  1. From IIS Manager, use the tree view to select the Application Pools node. The Features View displays a list of application pools.
  2. Right-click on the Default Application Pool (or the one you want to use if more than one) and select “Advanced Settings.”
  3. Change the “Enable 32-bit Applications” to True. Click OK. This spawns the App Pool in 32-bit mode. If you have other modules that need to be run in 64-bit mode, best to separate the website into two App Pools: one 32-bit and one 64-bit.
  4. Restart the server.

Configure Virtual Directory Properties

Use IIS Manager to access the Virtual Directory properties for the RB WebTier virtual directory (In the tutorials, I think we call this rbWebPub).

Select the rbWebPub node from the tree view on the left.

Double-click the Default Documents item listed in the Feature View on the right. Specify the name ISAPI module as the default document (do not specify the path, just the name).