繁体   English   中英

上传超过 30 MB 的 ASP.NET Core 3.1 时出现 504 错误

[英]504 error when uploading above 30 MB ASP.NET Core 3.1

我正在尝试解决一个问题,即在 Web 应用程序上上传超过 30 MB 的文件时收到网关超时错误。

在此之前,系统收到 404.13 错误,因此我通过更改maxAllowedContentLength更改了 web.config 文件以支持更大的文件,这最初是有效的。 但是,现在它收到了 504 错误。

系统的工作方式:

  1. 使用第三方上传工具选择一个文件并将其上传到网络应用程序(这部分工作没有问题)。

  2. 然后由 Web 应用程序处理该 ( IFormFile ) 以确定它是什么类型的文件,以及如何处理它。

  3. 完成后,该文件流将通过PutObjectAsync请求发送到 Amazon S3 存储桶。

我相信问题发生在第三步,但这很难诊断,因为它不会发生在本地环境中。 奇怪的是,我可以毫无问题地上传 29 MB 的文件,而且处理速度很快,但是当我超过它时,它似乎挂在了最后一步。 有没有人遇到过类似的问题? 你采取了什么步骤来解决它?

编辑:以前的 404.13 错误。

我们发现该问题与 IIS 或 AWS 没有直接关系。 相反,我们在上传到 AWS S3 之前在服务器上将视频文件编码为所需的格式。 对于较大的文件,此过程花费的时间太长,并导致网关超时错误。

安迪,你说得对。 它恰好发生在两分钟标记处,即(默认)我们将服务器超时配置为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM