Configuring the CGI gateway on IIS version 7 or later

If you are using Microsoft Internet Information Services (IIS) version 7 or later, configure the CGI gateway. This is required for single sign-on.

The CGI gateway is available for 32-bit and 64-bit web servers.

About this task

If you are using Microsoft IIS as your web server and you plan to run more than one IBM® Cognos® Analytics product, or several instances of the same product, on one computer, you must create a separate application pool for each product or instance and then associate the aliases for that product or instance to the application pool.

For more information about creating an application pool, see your web server documentation.

Procedure

  1. Install the IIS Application Request Routing (ARR) extension.
    1. Install the ARR extension for IIS by going to the following URL:
    2. When presented with the Microsoft web page, click the green Install this extension button.
      Follow instructions to download and run the ARR extension.
    3. To ensure that the ARR extension was installed successfully, launch the IIS Manager from the Windows Start\Administrative Tools menu. Once the IIS Manager launches, click on the server name at the top left-hand side of the screen to display the available features. Within the middle IIS pane, the URL Rewrite feature should now be visible; it is installed when ARR is installed.
  2. In the Microsoft Windows Control Panel, click Programs > Programs and Features.

    If you are using Microsoft Windows 8 or 2012 Server, Programs and Features is available directly from the Control Panel.

  3. Click Turn Windows features on or off.
  4. If you are using Microsoft Windows 2008 Server, use the following steps:
    1. Click Server Manager > Roles > Web Server (IIS).
    2. Ensure that Common HTTP Features, or the features you require are enabled.
    3. If CGI is set to Not installed, select CGI and click Add Role Service.
  5. If you are using Microsoft Windows 2012 Server, use the following steps:
    1. In the Add Roles and Features Wizard, click Role-based or feature-based installation, and click Next.
    2. Select your server, and click Next.
    3. Select Web Server (IIS), if it is not already installed, ensure that Common HTTP Features is selected, and click Next until you get to the Role Services section of the wizard.
    4. Expand Application Development.
    5. Select CGI if it is not already selected, and click Next.
    6. Click Install.
  6. If you are using Microsoft Windows 7 or 8, use the following steps:
    1. Select Internet Information Services if it is not already selected.
    2. Expand Internet Information Services > World Wide Web Services.
    3. Ensure that Common HTTP Features, or the features you require are enabled.
    4. Expand Application Development Features.
    5. If CGI is not selected, select CGI.
    6. Click OK.
  7. In the Internet Information Services (IIS) Manager console, under Connections, select your server name.
    • If you are using Microsoft Windows 2012 Server, in Server Manager, select IIS, and then right-click your server name, and click Internet Information Services (IIS) Manager.

    • If you are using Microsoft Windows 2008 Server, in Server Manager, expand Roles > Web Server (IIS), and then click Internet Information Services (IIS) Manager.

    • If you are using Microsoft Windows 8, from the Control Panel, click Administrative Tools to access the Internet Information Services (IIS) Manager console.

    • If you are using Microsoft Windows 7, from the Control Panel, click System and Security > Administrative Tools to access the Internet Information Services (IIS) Manager console.

  8. Double-click ISAPI and CGI Restrictions.
  9. Under Actions, click Add.
  10. Enter the path to the cognos.cgi file. The file is in the install_location\cgi-bin directory.

    You must enter the full path, including the file name. If the path includes spaces, ensure you use quotation marks around the path. For example, enter:

    C:\Program Files\ibm\cognos\analytics\cgi-bin\cognos.cgi

  11. Enter a Description, such as CognosCGI.
  12. Select Allow extension path to execute, and click OK.
  13. Under Connections, expand Sites, and under your website, add the virtual directories as shown in the table:
    Table 1. Required virtual directories

    Alias

    Location

    ibmcognos

    install_location/webcontent

    ibmcognos/cgi-bin

    install_location/cgi-bin

    Important: bi is the default value that is used in the Gateway URI and Controller URI for gateway values in IBM Cognos Configuration. If you do not use bi for the Alias values, ensure that you change the Gateway URI and Controller URI for gateway values to match the values you use.
  14. Select the cgi-bin virtual directory that you created.
  15. Double-click Handler Mappings.
  16. Under Actions, click Add Module Mapping.
    1. In Request Path, type cognos.cgi.
    2. In Module, select CgiModule.
    3. Leave Executable (optional) blank.
    4. In Name, enter a name for the entry, such as CognosCGI.
    5. Click OK.
  17. Configure the reverse proxy.

    This procedure provides the steps required to setup the reverse proxy to allow IIS to rewrite the gateway requests and pass them to the application tier. These steps assume a two server architecture where the IBM Cognos Analytics gateway is installed on Server1_Gateway and the IBM Cognos Analytics application is installed on Server2_Application

    1. On the Server1_Gateway server, launch IIS Manager and select the “bi” folder in the ibmcognos virtual directory set up previously.
    2. In the features view, start the URL Rewrite feature.
    3. Within the Actions pane, click on Add Rule(s), and then select Reverse Proxy. Click OK.
    4. In the Add Reverse Proxy Rule dialog box, within the Inbound Rules section, fill in the Enter the server name or the IP address… field in the following format. <Server2_Application:Port>/bi. For example, Server2_Application:9300/bi
    5. Ensure the Enable SSL Offloading check box is checked, and then click OK.
    6. On the Rules page, in the Action pane, click on View Server Variables.
    7. Click Add and add a variable named HTTP_X_BI_PATH. Once completed, click OK to create the variable.
    8. Within the Actions pane, click Back to Rules.
    9. Select the previously created rule and in the Inbound rules pane on the right hand side, click Edit...
    10. Expand the Server Variables section.
    11. Inside the Server Variables section, click the Add button.
    12. In the Set Server Variable dialog, select the HTTP_X_BI_PATH server variable and set the Value field to /ibmcognos/bi/v1
    13. Ensure the Replace existing value check box is checked.
    14. Click OK to save, and then, in the Action pane, click Apply.
    15. In the Action pane on the upper right, click Back to Rules to finish defining the rule.
    16. Test the configuration by entering the following URL pattern using a browser: http(s)://<web_server>:<web_server_port>/<alias>/bi/. For this example the URL would be: http://Server1_Gateway:80/ibmcognos/bi/.

Results

Users can access the CGI gateway by entering http://servername/ibmcognos/bi/ in their web browsers.