IIS 上传文件出现 "413 Request Entity Too Large" 错误,表示客户端尝试上传的文件大小超过了服务器配置的限制。
要解决此问题,需要修改 IIS 配置以允许更大的文件上传。 以下是几种方法:
- 修改 web.config 文件:
这是最常见的方法,因为它只影响特定的网站或应用程序。 在网站或应用程序的 web.config 文件中,找到 <system.webServer>(没有可以手动添加) 部分,并添加或修改以下配置:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" /> <!-- 例如,设置为 100MB -->
</requestFiltering>
</security>
</system.webServer>
maxAllowedContentLength 属性以字节为单位指定允许的最大内容长度。 在上面的示例中,它被设置为 100MB (100 * 1024 * 1024 = 104857600 字节)。 根据需求调整此值。
- 使用 IIS 管理器:
- 打开 IIS 管理器。
- 选择你的网站或应用程序。
- 双击 "请求筛选" 功能。
- 在 "功能设置" 中,找到 "最大允许内容长度" 并修改为你想要的值。
- 点击 "应用" 保存更改。
- 修改
applicationHost.config 文件 (不推荐):
这个文件控制所有网站的全局设置。 除非确定要影响所有网站,否则不建议修改此文件。 该文件通常位于 %windir%\system32\inetsrv\config 目录下。 修改方法与 web.config 类似,在 <system.webServer> 部分添加或修改 requestLimits。
- 检查其他限制:
除了 IIS 配置,还要检查以下方面是否也限制了上传大小:
- 反向代理: 如果使用了反向代理(如 Nginx 或 Apache),也需要检查它们的配置,确保它们允许更大的请求体大小。
- 负载均衡器: 类似地,如果使用了负载均衡器,也需要检查它的配置。
- 代码限制: 应用程序代码中也可能存在文件大小限制。 例如,ASP.NET Core 中的 MaxRequestBodySize 属性。
修改完成后,重启网站或应用程序,使更改生效。

Comments NOTHING