Cognos Controller Configuration hang when you select the Report Server section.

Product:
Cognos Controller 10.1
Microsoft Windows 2008 R2

Symptom:
Open Cognos Controller Configuration hang when you select the Report Server section.
In some cases you get a error message.
You can only kill the Controller Configuration program from Windows Task Manager, and when you go into Controller Configuration again it will hang.

Error message:
File Download
Do you want to save this file, or find a program online to open it?
Name: cognosisapi.xts&h_CAM_action=logon
Type: Unknown File Type, 252KB
From: servername

Cause:
You have changed the Controller Configuration to use cognosisapi.dll but not changed on the Windows 2008 iis to handle isapi for cognos controller. You need to change the IIS settings before you change in Controller Configuration.

Can also happens when you enter a none valid Report Server URL in Controller Configuration.

Solution:
1) In IIS select the server node, then double-click ISAPI and CGI Restrictions in the right pane, Under Actions on the right hand screen select Edit Feature Settings and make sure Allow unspecified ISAPI modules is selected.
In the Left Connection pane select the cgi-bin virtual directory, then double-click Handler Mappings in the right pane.
In the Actions pane click Add Module Mapping, the settings should be similar to:

Request path: cognosisapi.dll
Module: IsapiModule
Executable (optional): C:\Program Files (x86)\ibm\cognos\c10\cgi-bin\cognosisapi.dll
Name: ISAPI-cognos

Click OK and Yes to allow this ISAPI extension

2) If running 64-bit In iis under Application Pools, select your application pool for the ibmcognos virtual directories i.e. DefaultAppPool, on the right-hand side click Set Application Pool Defaults and change Enable 32-Bit Applications to True

3) Edit the file /c10/cgi-bin/web.config and add:
allowPathInfo=’true’
to the following entry:

To become:

4) Restart iis

5) In Cognos Configuration under Environment change Gateway URI to reference cognosisapi.dll instead
i.e.
from:
http://servername:80/ibmcognos/cgi-bin/cognos.cgi
to:
http://servername:80/ibmcognos/cgi-bin/cognosisapi.dll

(Leave Cognos Configuration open for the moment)

In the /webcontent directory, edit the index.htm and default.htm files and change
URL=cgi-bin/cognos.cgi?
To
URL=cgi-bin/cognosisapi.dll?

In Cognos Configuration save you settings and restart the services.

6) In Controller Configuration under Report server change Report server to cognosisapi.dll instead of cognos.cgi
i.e.
http://servername/ibmcognos/cgi-bin/cognos.cgi
to:
http://servername/ibmcognos/cgi-bin/cognosisapi.dll

When the user surf to http://servername/ibmcognos, will cognosisapi.dll be used as default.