HTTP请求405 Method Not Allowed

HTTP请求405 Method Not Allowed,第1张

问题表现: 某个应用在调用wcf服务时,日志提示"405 method not allowed"

开始以为是程序的问题,后来发现在别的服务器上安装使用都没有问题,猜测可能是IIS环境的问题。

百度了一下,得出的结论是:一般IIS默认能处理静态的htm,html文件 ,以及动态的脚本 asp,aspx 文件,如果要处理php或其他类型的脚本语言,必须做好ISAPI映射,于是打开IIS,找到提供上述RisWebService.svc服务的站点,点击“处理程序映射”

观察路径这一列,发现没有.svc的路径映射,所以IIS无法识别程序中的一般处理程序(*.svc),因此就报了标题中的错误。可能是在安装IIS过程中安装ASP.net功能安全不全。

解决办法:找到NET4安装目录: %windir%\Microsoft.NET\Framework64\v4.0.30319,

cmd运行命令 aspnet_regiis -i,

安装完之后,再次查看IIS程序映射,发现增加了.svc路径,问题解决。

那些都是核心module和handler,不用杞人忧天了。

如果没用到.asp的话,可以禁用

如果你是webform的话,.aspx, .axd, .ashx不能禁用

用到webservice的话,.asmx, .soap不能禁用

用到wcf的话,.svc, .soap不能禁用

如果是mvc程序的话,.cshtml不能禁用

StaticFile不能禁用

HTTP 404 错误意味着链接指向的网页不存在,即原始网页的URL失效,这种情况经常会发生,很难避免。

网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问;当Web 服务器接到类似请求时,会返回一个404 状态码,告诉浏览器要请求的资源并不存在。解决方法如下:

1.选择站点-》IIS-》处理程序映射-》添加脚本映射(对应扩展名)。

2.选择站点-》IIS-》处理程序映射-》添加通配符脚本映射(对应扩展名)。

3、如果在应用程序池选了32位支持,那就按上面的把32位的isapi再配置一遍就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12202054.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存