发布:2023/12/7 15:12:48作者:大数据 来源:大数据 浏览次数:579
StatusCode: 405, ReasonPhrase: 'Method Not Allowed',
IIS拒绝PUT和DELETE请求是由默认注册的一个名为WebDAVModule的自定义HttpModule导致的。
WebDAV的全称为Web-based Distributed Authoring and Versioning,它是一个在多用户之间辅助协同编辑和管理在线文档的HTTP扩展。该扩展使应用程序可以直接将文件写到Web Server上,同时支持文件的加锁和版本控制。微软是推动WebDAV成为一个标准的主导力量,它自己利用自定义的HttpModule实现了IIS针对WebDAV的支持。
但是这个默认注册(注册名称为WebDAVModule)会拒绝HTTP方法为PUT和DELETE的请求,如果我们的站点不需要提供针对WebDAV的支持,解决这个问题最为直接的方式就是利用如下配置web.config将注册的HttpModule移除即可:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="WebDAVModule" />
</modules>
</system.webServer>
有些单位防火墙限制了这两个方法put,delete,需要在防火墙中添加允许。
DELETE 语句与 REFERENCE 约束"FK_SUser_U_User"冲突。该冲突发生于数据库"SData",表"dbo.SUser", column 'UserId'。
语句已终止。
右击数据表,选择设计,然后选择关系,将删除约束选择为级联,问题解决。
主要本地安装的sql server 2012,生产环境为sql server express压缩版本,导致版本有差异,非压缩版本不选择级联也正常执行。
© Copyright 2014 - 2025 柏港建站平台 ejk5.com. 渝ICP备16000791号-4