405 -不允许使用HTTP predicate 访问此页面,[IIS 8.5] [Windows Server 2012 R2]

41zrol4v  于 2023-02-04  发布在  Windows
关注(0)|答案(4)|浏览(157)

我有一个新的IIS服务器,从一段时间以来,我正在寻找错误的解决方案:
405-不允许用于访问此页面的HTTP predicate 。无法显示您正在查找的页面,因为尝试访问时使用了无效的方法(HTTP predicate )。
我看到了以下解决方案:
1.

<system.webServer>
    <modules>
        <remove name="WebDAVModule" />
    </modules>
    <handlers>
        <remove name="WebDAV" />
    </handlers>
</system.webServer>
  1. IIS设置http://www.somacon.com/p126.php
    解决方案1,导致内部服务器错误,后来无法找到解决方案。解决方案2,我无法找到属性窗口在iis 8. 5,所以无法尝试相同的。
    请帮帮忙
4dbbbstv

4dbbbstv1#

我在尝试第一个解决方案时也遇到了同样的内部服务器错误,在HTTP 405 error with Web API中描述。由于我甚至没有使用WebDAV,我选择从IIS中完全删除它(见下面的屏幕截图)。在重新启动服务器后,问题解决了。

c8ib6hqw

c8ib6hqw2#

我的一位同事帮了我的忙,我错过了一些主要的IIS特性。
后藤添加角色和功能向导,然后选择Web服务器(IIS)〉Web服务器〉应用程序开发〉选择ASP.net3.5和Asp.net4.5,然后单击安装。
后藤cmd提示符和iisreset。
对于WCF服务,请检查WCF服务下的Http激活。
希望这对你有帮助,保存你的时间。

yhived7q

yhived7q3#

这是晚了,但可能会帮助一些其他人。我的应用程序是WEB-API点网核心面临同样的问题时,部署在本地服务器上解决这个问题,请执行以下步骤。

<system.webServer>
      <modules runAllManagedModulesForAllRequests="true">
        <remove name="WebDAVModule"/>
        <!-- add this -->
      </modules>
      <handlers>
                <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
                <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
                <remove name="TRACEVerbHandler" />
                <remove name="OPTIONSVerbHandler" />
                <remove name="WebDAV" />
                <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
                <add name="aspNetCore" path="*" verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
                <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*."  verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"  type="System.Web.Handlers.TransferRequestHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" />
                <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*."  verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"  modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="Script" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
                <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*."  verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS"  modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="Script" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
      </handlers>
d7v8vwbk

d7v8vwbk4#

我遇到了同样的问题与我的PHP应用程序,运行在“Windows Server 2019”和IIS服务器。我试图通过Postman测试我的FHIR API,但只有POSTGET请求工作正常。但PUT请求不工作。任何解决方案建议做的 web.config 文件不适合我。唯一的解决方案是删除“WebDAV”模块从IIS(如马克G建议)。重新启动服务器机器是一个必须应用该功能删除,使我的应用程序正常工作。

相关问题