在对IIS 6上的asmx web服务的POST请求中使用分块编码会生成404

在对IIS 6上的asmx web服务的POST请求中使用分块编码会生成404,post,iis-6,asmx,http-status-code-404,chunked-encoding,Post,Iis 6,Asmx,Http Status Code 404,Chunked Encoding,我正在使用CXF客户端与运行在IIS 6上的.net web服务通信。 此请求(匿名): POST/EngineWebService_v1/EngineWebService_v1.asmx HTTP/1.1 内容类型:text/xml;字符集=UTF-8 SOAPAction:“http://.../Report" 接受:*/* 用户代理:Apache CXF 2.2.5 缓存控制:没有缓存 Pragma:没有缓存 主机:uat9.gtios.net 连接:保持活力 传输编码:分块 后跟7个40

我正在使用CXF客户端与运行在IIS 6上的.net web服务通信。 此请求(匿名):

POST/EngineWebService_v1/EngineWebService_v1.asmx HTTP/1.1 内容类型:text/xml;字符集=UTF-8 SOAPAction:“http://.../Report" 接受:*/* 用户代理:Apache CXF 2.2.5 缓存控制:没有缓存 Pragma:没有缓存 主机:uat9.gtios.net 连接:保持活力 传输编码:分块 后跟7个4089字节块和一个369字节块,在发送第一个块后生成以下输出:

HTTP/1.1 404 Not Found Content-Length: 103 Date: Wed, 10 Feb 2010 13:00:08 GMT Connection: Keep-Alive Content-Type: text/html 未找到HTTP/1.1 404 内容长度:103 日期:2010年2月10日星期三格林威治标准时间13:00:08 连接:保持活力 内容类型:text/html 有人知道如何让IIS接受帖子的分块输入吗


谢谢

应该使用分块编码。您可以通过以下方式检查设置:

C:\Inetpub\AdminScripts>cscript adsutil.vbs get/W3SVC/AspEnableChunkedEncoding


404让我怀疑这是否真的是分块编码的问题。您是否对URL进行了三次检查?

您可能已经在服务器上运行了URLScan。默认情况下,URLScan被配置为拒绝具有
传输编码:
头和(在正确的服务器错误上很明显)的请求

UrlScan v3.1故障会导致404个错误,而不是500个错误。 在W3SVC日志中搜索404错误将包括由于 要扫描阻塞

您需要查看位于以下位置的文件(路径可能不同)
C:\Windows\System32\inetsrv\URLScan\URLScan.ini
。在那里的某个地方,你会发现一个
[DenyHeaders]
部分,看起来有点像这样(它可能会列出更多的标题)


从该列表中删除
传输编码:
,它应该可以解决您的问题。

我已经通过元数据库查看器,并且AspEnableChunkedEncoding已启用(未在任何地方禁用)。您是否有过AspEnableChunkedEncoding影响上传和下载的经验?文档中没有任何关于分块帖子的内容。URL没有问题,一个较小的请求成功了。谢谢。是的,我有,但只有type=“FILE”但那仍然是一篇HTTP文章。事件日志里有什么吗? HTTP/1.1 404 Not Found Content-Length: 103 Date: Wed, 10 Feb 2010 13:00:08 GMT Connection: Keep-Alive Content-Type: text/html
[DenyHeaders]

transfer-encoding: