zoukankan      html  css  js  c++  java
  • IIS发布-HTTP谓词限制访问

        一个WebAPI项目(.net core 2.2),利用Swagger UI方便测试。API中涉及到一些基本操作,如Student的CRUD,分别对应了HttpGet, HttpPost, HttpPut, HttpDelete四种HttpMethod。]

    在开发环境中使用VS自带的IIS来host程序,四个方法全部通过了测试。打包发布在同一台机器上的IIS(Version 10.0.17134.1),交付给前端小伙伴进行测试。前面的Get方法可以正常访问,直到PUT,Delete方法,返回结果为405。百度得知405状态码为 用来访问本页面的 HTTP 谓词不被允许(方法不被允许)。

      在IIS的 处理程序映射 下有这样一个东东WebDAVModule。双击打开,点击下面的 请求限制可以发现这里可以配置IIS允许通过的谓词。将其更改为允许全部谓词,测试仍不通过。

    解决方式为:

    web.config中添加

    <modules runAllManagedModulesForAllRequests="true">
      <remove name="WebDAVModule"/>
    </modules>
    成功。
     
    相关内容:
    IIS下的 处理程序映射 的作用描述是:使用此功能处理特定请求类型的响应资源,如DLL和托管代码。由此可知WebDAVModule也是处理相关内容的,但是具体是做什么的呢?
    在网上只找到了IIS7下的WebDAV作用的描述,详细内容在这里。(如果有更及时的文档麻烦留言回复一下,感激不尽)
    简单的说 
    WebDAV是Web分布式创作和版本控制的简称,它是HTTP协议的开放标准扩展,可通过Internet进行文件管理。除了通常的类文件系统操作(复制,移动,删除等)之外,WebDAV还添加了灵活的属性机制(基于名称/值对)和资源锁定。WebDAV是Microsoft Web发布故事中的关键组件,由WebDAV重定向器,Web文件夹,SMS / SCCM和许多其他组件使用。
  • 相关阅读:
    java事件处理机制(自定义事件)
    EL表达式 (详解)
    Java编程思想(四) —— 复用类
    优秀辅助网站使用记录
    快速部署tomcat项目的Shell脚本
    数据库SQL优化大总结
    常用排序算法及应用背景
    Java面试通关秘籍汇总集
    Java堆、栈和常量池以及相关String详解
    常用加密算法概述
  • 原文地址:https://www.cnblogs.com/jackielyj/p/12295541.html
Copyright © 2011-2022 走看看