5

将视频文件上传到 Amazon S3 时,文件在上传时达到 100%,然后我收到响应 413 Request Entity Too Large。如何解决此问题,以便我可以将视频文件上传到 Amazon S3?

我正在使用 Nodejs、Express、Heroku、Cloudflare 和 Amazon S3。

4

3 回答 3

5

你的网络服务器 nginx,apache ..etc 是什么?

对于 nginx,你需要找到 nginx.conf 文件。它应该在

/etc/nginx/nginx.conf

用 vi 或 nano 打开

vi /etc/nginx/nginx.conf

找到client_max_body_size 2M

client_max_body_size 2M

你可以编辑这个结束。M = 兆字节 G = 千兆字节

如果这不起作用,您需要更改 php.ini 以使其正常工作

这设置了允许脚本分配的最大内存量(以字节为单位)

memory_limit = 32M

上传文件的最大大小。

upload_max_filesize = 2M

设置允许的帖子数据的最大大小。此设置也会影响文件上传。上传大文件,这个值必须大于upload_max_filesize

post_max_size = 3M

为 Heroku 更新

如果您使用的是 Express v4+,则可以使用

app.use(bodyParser({limit: '5mb'}));

但要确保这条线在上面

app.use(bodyParser.json());

否则它将无法正常工作

于 2017-08-03T14:06:02.783 回答
4

既然您提到了 Cloudflare,那很可能是罪魁祸首。他们为其免费计划强制执行最大上传大小为 100MB 。由于您使用的是 AWS S3,因此您可以生成预签名 URL 并直接上传到您的 S3 存储桶,而不是通过您的服务器。

于 2018-08-04T19:18:50.043 回答
0

我使用免费的 Heroku 服务器,不确定他们使用的是什么网络服务器。我还有免费的 cloudflare 帐户,我试图暂停这个应用程序,但没有成功。

于 2017-08-03T14:11:21.603 回答