我有一个Web应用程序应该处理来自SAP的请求。
其他客户使用win2k3系统(IIS6)和win2k8(IIS7)系统的情况一直很好。
但是,在这个特定客户的网站上,IIS响应一个400响应,而不会调用我的aspx页面。 实际上,我甚至没有看到它出现在虚拟目录的w3c日志中。
我看到使用networking监视器的请求,所以我知道没有防火墙等正在吃请求,并据我所知,请求的所有字段是有效的(有“内容长度”,它看起来正确(这是一个28K tiff文件的发送 – 这不是MIME编码,现在好奇,现在我想起来了…)
想法?
您可以检查该服务器上的HTTPERR日志。 也许这个博客文章包含一个提示如何解决这个问题:
内容长度大小增加时,ASMX POST请求将失败,HTTP 400错误
第一站是查看IIS框上的HTTPERR日志,无效的动词错误是在其中报告:
2009-03-09 21:30:53 10.1.48.56 42676 10.1.48.53 80 HTTP/0.0 Invalid - 400 - Verb -
我们find了答案,这对于非SAP用户来说并不是非常有用。
发出请求的程序是SAP前端客户端使用的名为saphttp.exe的实用程序。 事实certificate,客户的版本是SAP报告的,具有这个问题 – POST请求形成的不好。 我复制我的版本的实用程序到客户网站,它的工作。
将其标记为SAP不合格。
有没有机会被其他网站处理? 尝试一个“resttesting”。 停止站点,看看响应是否改变。
没有日志条目,你不能告诉子状态代码是什么,这将有助于进一步的故障排除。
这是一个新的服务器? 如果是默认安装,那可能是ASP.NET没有启用。 如果在Web服务器/应用程序开发中选中ASP.NET,请检入angular色服务:
IIS启用ASP.NETangular色http://learn.iis.net/file.axd?i=2231