"http/1.1 405 Method not allowed" when trying to log in to an IIS site using forms authentication (Legacy_Onyx KB Id: 119928)

Document ID : KB000026491
Last Modified Date : 14/02/2018
Show Technical Document Details

Problem : 

When we attempt to logon to our portal, we get this error message when Netegrity tries to validate userid:

HTTP/1.1 405 Method not allowed.

We have saved log files. Please advise what additional information you require to research this.

Cause: 

Most likely problem is as follows (with suggested solution):

The customer's box does not have a Default Web Site (theirs is named something else), so it does not have the correct application extensions and the siteminderagent virtual directory setup properly.

Resolution:

Here are the mimetypes you need to have (at the web site level and / or machine level):

.ccc
.fcc
.scc

For each one of these, the executable path should be the path to isapiwebagent.dll. For example, the path that I have is C:\PROGRA~1\CA\SITEMI~2\Bin\ISAPIW~1.DLL
(You may need to have SITEMI~1 instead if the policy server is on a different box than the web agent.)

You may also need to add the siteminderagent virtual directory. If you do, you simply need a virtual directory named siteminderagent that points to C:\Program Files\CA\SiteMinder agent\Samples with Execute (Including Scripts) permissions.

Once you have the siteminderagent virtual directory (whether you have to create it or not), check the properties. On the Virtual Directory tab -> Configuration button, make sure that the mimetypes you set at the web site level were inherited. If you have your login page in a different directory, you should probably check there as well (this should all be fine as long as you inherit the mimetype changes throughout the web site).

The customer should also make sure that the directory containing their login page (.fcc) had permission to Execute (Including Scripts).

Finally, needs to remove a blank line from the top of the .fcc file (before the @directives), if one exists. It seems that if the first line is blank, then SiteMinder doesn't read the @directives properly (doesn't getting a value for the username from the @username directive).