Recommended

Twitter

Cognos 8 Gateway in IIS 7.0

Setting up a Cognos 8 gateway in IIS 7.0 has been an issue for most administrators. The setup is not straight-forward as in IIS 6, and can also lead to server security being compromised if this is not setup correctly.

Here are the steps that I usually follow -

1. Open IIS Manager
2. In the left Connections pane, expand the server node, expand Sites, right-click on Default Website, and click Add Virtual Directory.
3. Enter 'cognos8' for the Alias and enter the path to the c8/webcontent directory in Physical Path (default C:\Program Files\cognos\c8\webcontent). Click OK.
4. Right click on the newly-created cognos8 Virtual Directory and click Add Virtual Directory
5. Enter 'cgi-bin' for the Alias and enter the path to the c8/cgi-bin directory in Physical Path (default C:\Program Files\cognos\c8\cgi-bin). Click OK.
6. Right click on the cognos8 Virtual Directory again and click Add Virtual Directory
7. Enter 'help' for the Alias and enter the path to the c8/webcontent/documentation directory in Physical Path (default C:\Program Files\cognos\c8\webcontent\documentation). Click OK.
8. In the left Connections pane, select the server node, then double-click ISAPI and CGI Restrictions in the right pane.
9. In the Actions pane click Add, enter the path to either cognosisapi.dll or cognos.cgi depending on which you will use (default C:\Program Files\cognos\c8\cgi-bin\cognosisapi.dll or C:\Program Files\cognos\c8\cgi-bin\cogno.cgi), check the 'Allow extension path to execute' box, then click OK.
10. In the left Connections pane, select the cgi-bin virtual directory, then double-click Handler Mappings in the right pane.
11. In the Actions pane click Add Module Mapping, then enter either 'cognos.cgi' or 'cognosisapi.dll' for the Request Path, choose either CGIModule or ISAPIModule for the Module, give it an identifiable name like 'CGI-cognos' then click OK.
12. In order for Cognos Administration to function properly, the directive added to the IIS configuration file by the previous step has to be edited manually. Depending on how IIS is set up, this will have been written either to C:\Windows\System32\inetsrv\config\applicationhost.config or to <cognos_home>/c8/cgi-bin/web.config. Check those files for the following entry:

<add name='CGI-cognos' path='*.cgi' verb='*' modules='CgiModule' resourceType='Unspecified' />
and add allowPathInfo='true' to it like this:
<add name='CGI-cognos' path='*.cgi' verb='*' modules='CgiModule' resourceType='Unspecified' allowPathInfo='true' />

In addition to the above steps, when running IIS on a Windows 2008 Server 64-bit installation, you will need to create and configure an application pool for the Cognos cgi-bin directory that permits 32-bit applications to execute.

1. Right hand click on "Default Application Pool" and select "Advanced Settings", when the window opens up, change the property for "Enable 32-bit Applications" to "True".