none
IIS 7 error Handler "svc-ISAPI-4.0_32bit" has a bad module "IsapiModule" in its module list

    Question

  • Hi experts,

    I'm trying to  host my WCF(3.5) on IIS7  and I get the below error. 

    HTTP Error 500.21 - Internal Server Error

    Handler "svc-ISAPI-4.0_32bit" has a bad module "IsapiModule" in its module list

     

    I tried reinstalling >net 4(Some forum mentioned to do that) and also aspnet_regiis.exe -i in VS 2010 command prompt.

    Thanks in advance,

    KP

    Nothing helped.


    Tuesday, August 31, 2010 6:02 PM

Answers

  • Hi,

    Did you run  "%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i" ? Could you find the following setting in c:\windows\system32\inetserv\config\applicationHost.config?

     <system.webServer>
                <modules>

    ..
    <add name="IsapiModule" lockItem="true" />


    Please remember to mark the replies as answers if they help and unmark them if they provide no help. Windows Azure Platform China Blog: http://blogs.msdn.com/azchina/default.aspx
    Thursday, September 02, 2010 2:48 AM
    Moderator

All replies

  • Hi,

    Did you run  "%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i" ? Could you find the following setting in c:\windows\system32\inetserv\config\applicationHost.config?

     <system.webServer>
                <modules>

    ..
    <add name="IsapiModule" lockItem="true" />


    Please remember to mark the replies as answers if they help and unmark them if they provide no help. Windows Azure Platform China Blog: http://blogs.msdn.com/azchina/default.aspx
    Thursday, September 02, 2010 2:48 AM
    Moderator
  • I'm having the same issue, and have tried a variety of solutions and none seem to resolve the issue.  My applicationHost.config does not have a IsapiModule entry.  I've tried putting it in and it simply seems to move to the next module.  I suspect this is a IIS configuration issue.  The additional challenge is that the WCF service was developed on a WIndows 7 machine using IIS 7.5 and needs to run on a Server 2003 IIS 6 environment (with a certificate).

    Can you please review the server config file I've created and let me know what might be missing?  Thanks in advance for the help.

    <?xml version="1.0"?>
    <configuration>
      <configSections>
        <section name="exceptionHandling" type="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Configuration.ExceptionHandlingSettings, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
      </configSections>
      <exceptionHandling>
        <exceptionPolicies>
          <add name="Policy">
            <exceptionTypes>
              <add name="All Exceptions" type="System.Exception, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" postHandlingAction="None">
                <exceptionHandlers>
                  <add name="Replace Handler" type="Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ReplaceHandler, Microsoft.Practices.EnterpriseLibrary.ExceptionHandling, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" exceptionMessage="An exception occurred in the BRMA Wcf Service" replaceExceptionType="System.Data.SqlClient.SqlException, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
                </exceptionHandlers>
              </add>
            </exceptionTypes>
          </add>
        </exceptionPolicies>
      </exceptionHandling>
      <connectionStrings>
        <!--<add name="LegacyPortal" connectionString="Data Source=Leadssql1,1436; FAILOVER PARTNER=leadssql2; User ID=portal;Password=bcard_!03; INITIAL CATALOG=Asp4Leads"-->
        <add name="ITNPortal2011" connectionString="Data Source=DevSql,1436; User ID=sa; Password=bcard_!03; INITIAL CATALOG=Frodo" providerName="System.Data.SqlClient" />
      </connectionStrings>
      <system.web>
        <!--<compilation targetFramework="4.0" debug="true"/>-->
        <compilation />
      </system.web>
      <system.serviceModel>
        <services>
          <service name="WcfService.WcfService" behaviorConfiguration="WcfServiceBehaviors">
            <endpoint address="" binding="wsHttpBinding" bindingConfiguration="SSLSecurity" name="SSLendpoint" contract="WcfService.IWcfService" />
            <endpoint address="WcfService" bindingNamespace="http://schemas.companyname.com/WcfService" binding="webHttpBinding" bindingConfiguration="webBinding" contract="WcfService.IWcfService" />
            <endpoint address="MEX" contract="IMetadataExchange" name="mexHttpBinding" binding="mexHttpBinding" listenUriMode="Explicit" />
            <!--<endpoint contract="WcfService.IWcfService" binding="mexHttpBinding" address="MEX"/>-->
          </service>
        </services>
        <!--<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>-->
        <bindings>
          <webHttpBinding>
            <binding name="webBinding">
              <security mode="Transport"></security>
            </binding>
          </webHttpBinding>
          <wsHttpBinding>
            <binding name="SSLSecurity">
              <security mode="Transport">
                <transport clientCredentialType="None" />
              </security>
            </binding>
          </wsHttpBinding>
        </bindings>
        <behaviors>
          <serviceBehaviors>
            <behavior name="WcfServiceBehaviors">
              <serviceMetadata httpGetEnabled="true" />
            </behavior>
            <behavior name="returnFaults">
              <serviceDebug includeExceptionDetailInFaults="true" />
            </behavior>
          </serviceBehaviors>
          <endpointBehaviors>
            <behavior name="ITN.Services.AspNetAjaxBehavior">
              <enableWebScript />
            </behavior>
          </endpointBehaviors>
        </behaviors>
      </system.serviceModel>
      <system.webServer>   
        <modules runAllManagedModulesForAllRequests="true" />
      </system.webServer>
    </configuration>

     


    Treo 700wx guy
    Tuesday, September 27, 2011 12:38 AM
  • FYI - I have this hosted in a website in a VD that is set as an application so I think the issue probably exists.  Currently I can't get either the http or the https versions to work. 
    Treo 700wx guy
    Tuesday, September 27, 2011 12:43 AM
  • Did anyone manage to find a resolution to this issue?

    HTTP Error 500.21 - Internal Server Error

    Handler "svc-ISAPI-4.0_32bit" has a bad module "IsapiModule" in its module list

    I have verified the following things and still the application does not work:

    1. applicationHost.config does not have IsapiModule entry.(and why sholud i be modifying this file at the first hand.Makes no sense).
    2. Permission to iis_USRS - Not working even after giving full control
    3. Tried re-installing asp.net 4.0 : aspnet_regiis -i
    4. If same service is hosted on cassini and consumed in the calling application. It works with no issues.

    MS team, I am sure that this is weird (probably a bug - not a security issue). Please suggest a resolution.

     

    Thanks in advance

    Bhaskar Tripathi
    "It is our wits that make us men"
    www.bhaskartripathi.com

    Monday, October 03, 2011 9:12 AM