IBM Support

"The request failed with HTTP status 405: Method Not Allowed" when launching Controller, caused by incorrect 'Handler Mappings' settings

Troubleshooting


Problem

User launches Controller client. User receives error.

Symptom

Example (Controller 10.1.1)

 
Error
An error occurred while trying to access the server.
http://servername/ibmcognos/cgi-bin/cognos.cgi?t=controller
[Details] [OK]
 
Error Details
The request failed with HTTP status 405: Method Not Allowed.

Cause

There are several possible causes of the same symptoms.
  • TIP: See separate IBM Technote #1653361 for more examples.

This Technote specifically relates to the scenario where the cause is that the Gateway server's cgi-bin virtual directory's 'Handler Mappings' has not been configured correctly.

There are many possible examples, such as:
  • Example #1 - relevant local entry (by convention typically called "cgi-bin") does not exist
  • Example #2 - relevant local entry has typo mistake in it
    • In one real-life example (Controller 10.1.1), the 'cgi-bin' request path was incorrectly set to '*.cg1' (instead of the correct value of: *.cgi ):
 
  • Example #3 - "cgi-bin" local entry has incorrect 'Verbs' setting
    • In one real-life example (Controller 10.1.1), the 'Verbs' setting was *not* set to "All verbs":

Environment

Controller is configured to use a dedicated 'gateway' machine (for example located in the DMZ) which is separate from the 'main' Controller application server.
  • In other words, the system is configured in the way described inside separate IBM Technote #1367311.

Resolving The Problem

Reconfigure the Handler Mappings for the virtual directory 'cgi-bin' on the 'Gateway' server to be correct.

Steps:

The steps will vary depending on the version of Controller used.

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Controller 10.4.2 (using ISAPI with Cognos Analytics)

Perform the following:

1. Configure "Handler Mappings" by doing the following:
  • Highlight/select the virtual directory cgi-bin 
  • Double-click on ‘Handler Mappings’ (in the right-hand pane)
image 5520
  • Click on ‘Add Module Mapping
  • Enter the values similar to the following (modify the path as appropriate for where you have installed it):
    • Request path: cognosisapi.dll
    • Module: IsapiModule
    • Executable (optional):   C:\Program Files\ibm\cognos\analytics\cgi-bin\cognosisapi.dll
    • Name: ISAPI-cognos
 image 5521
  • Click OK.
2. Configure "allowPathInfo="true" by doing the following:
  • Using Windows Explorer, browse to here: C:\Program Files\ibm\cognos\analytics\cgi-bin
  • Edit the following file (inside NOTEPAD):   web.config
  • In the row for 'ISAPI-cognos' add the following text after the entry resourceType="File":     allowPathInfo="true"
TIP: The file will now look similar to:
image 5530

For most servers, the above is enough to solve the problem. However, in some environments the file contains the phrase types="CgiModule" instead of modules="CgiModule". In this case, you will need to change the file to say: modules="CgiModule"

TIP: For more information on the above, see separate IBM Technote #6257779.

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

Controller 10.1.1 (using either CGI or ISAPI)

Example #1 & 2

Perform the following on the 'Gateway' server:

  • If using CGI, then it should look similar to the following (see Technote #1577559 for more details):
  • If using ISAPI, then it should look similar to the following (see Technote #1504282 for more details):

Example #3

Modify the relevant local entry (by convention typically called "cgi-bin") so that its 'Verbs' setting is set to "All Verbs":


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

[{"Product":{"code":"SS9S6B","label":"IBM Cognos Controller"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Controller","Platform":[{"code":"PF033","label":"Windows"}],"Version":"10.1.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
17 August 2020

UID

swg21653270