[ConfigMgr] Client push may fail when the Management Point is installed on Windows Server 2008

Earlier today I posted about an issue we're seeing with some degree of frequency in our OpsMgr support group so I figure why leave the ConfigMgr crowd out?  This one seems to be fairly popular so maybe if you happen to run into it you'll now know the resolution.  A special thanks to Dennis Donahoe for bringing this to my attention and writing up the original solution below:

========

Issue: When the System Center Configuration Manager 2007 Management Point (MP) is installed on a Windows Server 2008 based computer, client push installations may fail with an error similar to the following:

Failed to correctly receive a WEBDAV HTTP request.
Failed to successfully complete HTTP request. (StatusCode at WinHttpQueryHeaders: 405)
Sending Fallback Status Point message, STATEID='301'.
State message with TopicType 800 and TopicId {44ECCF16-A66D-4FD0-B127-808F39B21380} has been sent to the FSP

Cause: Certain information may be missing from the applicationHost.config file.

Resolution: Add the following to each of the %windir%\System32\inetsrv\config\applicationHost.config file's <handlers xxxx> section:

<add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" />

Add the line above in each <handlers xxxx> section between OPTIONSverbhandler and the "StaticFile"

NOTE: There is a separate handlers  section for each virtual directory

You may also need to verify that the following exists in the same file:

1. In the <globalModules></globalModules> section:

<add name="WebDAVModule" image="C:\Windows\system32\inetsrv\webdav.dll" />

2. In the <modules></modules> section:

<add name="WebDAVModule" />

Below is an example of the corrected section for the SMSMP virtual Directory section:

<location path="Default Web Site/SMSSMP">
        <system.webServer>
            <directoryBrowse enabled="false" showFlags="Date, Time, Size, Extension" />
            <handlers accessPolicy="Execute">
                <clear />
                <add name="ISAPI-dll" path="*.dll" verb="*" modules="IsapiModule" resourceType="File" requireAccess="Execute" allowPathInfo="true" />
                <add name="TraceHandler-Integrated" path="trace.axd" verb="GET,HEAD,POST,DEBUG" type="System.Web.Handlers.TraceHandler" preCondition="integratedMode" />
                <add name="WebAdminHandler-Integrated" path="WebAdmin.axd" verb="GET,DEBUG" type="System.Web.Handlers.WebAdminHandler" preCondition="integratedMode" />
                <add name="AssemblyResourceLoader-Integrated" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode" />
                <add name="PageHandlerFactory-Integrated" path="*.aspx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory" preCondition="integratedMode" />
                <add name="SimpleHandlerFactory-Integrated" path="*.ashx" verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.SimpleHandlerFactory" preCondition="integratedMode" />
                <add name="WebServiceHandlerFactory-Integrated" path="*.asmx" verb="GET,HEAD,POST,DEBUG" type="System.Web.Services.Protocols.WebServiceHandlerFactory, System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" preCondition="integratedMode" />
                <add name="HttpRemotingHandlerFactory-rem-Integrated" path="*.rem" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode" />
                <add name="HttpRemotingHandlerFactory-soap-Integrated" path="*.soap" verb="GET,HEAD,POST,DEBUG" type="System.Runtime.Remoting.Channels.Http.HttpRemotingHandlerFactory, System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="integratedMode" />
                <add name="AboMapperCustom-51457" path="*.sms_smp" verb="CCM_POST" modules="IsapiModule" scriptProcessor="d:\sms_ccm\smpisapi.dll" responseBufferLimit="0" />
                <add name="TRACEVerbHandler" path="*" verb="TRACE" modules="ProtocolSupportModule" requireAccess="None" />
                <add name="OPTIONSVerbHandler" path="*" verb="OPTIONS" modules="ProtocolSupportModule" requireAccess="None" />
        <add name="WebDAV" path="*" verb="PROPFIND,PROPPATCH,MKCOL,PUT,COPY,DELETE,MOVE,LOCK,UNLOCK" modules="WebDAVModule" resourceType="Unspecified" requireAccess="None" />
                <add name="StaticFile" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="Either" requireAccess="Read" />
            </handlers>
            <security>

========

Thanks Dennis!

J.C. Hornbeck | Manageability Knowledge Engineer

Feed: The Configuration Manager Support Team Blog
Posted on: 22 January 2009 22:25
Author: jchornbe
Subject: ConfigMgr 2007: Client push may fail when the Management Point is installed on Windows Server 2008

Read the complete post at http://wmug.co.uk/blogs/cliffs_blog/archive/2009/01/23/configmgr-client-push-may-fail-when-the-management-point-is-installed-on-windows-server-2008.aspx

Published Friday, January 23, 2009 9:41 AM by Cliff Hobbs - FAQShop.com and Microsoft MVP ConfigMgr/ SMS
Filed under: ,