411 IIS服务器上需要内容长度,但基于linux的服务器上不需要

411 IIS服务器上需要内容长度,但基于linux的服务器上不需要,iis,http-status-code-411,Iis,Http Status Code 411,我有一个RESTApi应用程序,我最近已将其转移到Microsoft Azure应用程序服务。早些时候,它托管在Linux服务器上。我看到的问题很奇怪: 当使用ASP.net的客户端调用未显式传递正文和内容长度头的POST请求时,该请求将失败,并出现411 content-length required error。对于同一个客户机,发送到Linux服务器的请求仍然可以正常工作 对于使用python/PHP的客户机,相同的请求在IIS和Linux环境中都有效 我无法理解为什么会发生这种情况。我已

我有一个RESTApi应用程序,我最近已将其转移到Microsoft Azure应用程序服务。早些时候,它托管在Linux服务器上。我看到的问题很奇怪:

  • 当使用ASP.net的客户端调用未显式传递正文和内容长度头的POST请求时,该请求将失败,并出现
    411 content-length required error
    。对于同一个客户机,发送到Linux服务器的请求仍然可以正常工作

  • 对于使用python/PHP的客户机,相同的请求在IIS和Linux环境中都有效


  • 我无法理解为什么会发生这种情况。我已通过为此API调用发送
    内容长度:0
    解决了此问题,但我想了解发生这种情况的原因。

    所有运行在IIS ARR之后的Azure应用程序服务,可能会执行类似的额外HTTP验证。这并不奇怪,你会习惯的。还有@LexLi,谢谢你的澄清。