413 请求实体太大 IIS 10

Posted

技术标签:

【中文标题】413 请求实体太大 IIS 10【英文标题】:413 Request Entity Too Large IIS 10 【发布时间】:2020-02-18 16:14:54 【问题描述】:

我正在尝试将包含 4 个文件(作为 base64 字符串)的对象作为 Http Post 请求发送到 WebApi 2。但是,在执行时,我在服务器上得到413 Error。在当地,一切都很好,而且工作正常。

所以我继续使用这个Tutorial 并将uploadReadAheadSize 更改为1048576000 但是我仍然遇到同样的错误。

更多线索!有趣的是,如果我上传另一个比这更大的对象,它将在服务器上工作。所以我想也许不是因为uploadReadAheadSize.. 但我不知道还有什么可能导致这个问题。有什么想法吗?

【问题讨论】:

文件有多大? @Neil 我的 JSON 字符串长度是 1099830 您是否也尝试过增加 maxRequestEntityAllowed? @LjubomirBacovic 设置为4294967295 够了吗? 返回413错误需要多长时间?您是否尝试过回收应用程序池?因为有时候不回收配置是不会生效的。此外,如果您发布呼叫提琴手。它应该在响应正文中返回错误堆栈跟踪。您看到错误堆栈跟踪的样子了吗?如果在这种情况下 uploadReadAheadSize 不起作用,则捕获和分析转储文件以查找第一次机会异常将是解决此问题的第一步。 【参考方案1】:

我通过adding the web.config file解决了这个问题

并添加此代码。

<system.webServer>
    ...
    <security>
      <requestFiltering>
         <requestLimits maxAllowedContentLength="144400000" />
      </requestFiltering>
    </security>   
    ...
</system.webServer>

【讨论】:

以上是关于413 请求实体太大 IIS 10的主要内容,如果未能解决你的问题,请参考以下文章

IIS 8.5 请求实体太大在 IE 11 中发生,但在 Chrome 中没有

WCF 413 请求实体太大 - 自托管 WebHttpBinding

上传报告失败 - HTTP 代码 413:页面未显示,因为请求实体太大

具有 30mb 输入字符串的 WCF 服务 - 远程服务器返回错误:(413)请求实体太大

(413) 使用 WCF 请求实体太大错误

413 请求实体太大 AWS Elastic Beanstalk