413 请求实体在 Nginx 和 Amazon ElasticBeanstalk 中太大

Posted

技术标签:

【中文标题】413 请求实体在 Nginx 和 Amazon ElasticBeanstalk 中太大【英文标题】:413 Request Entity Too Large in Nginx and Amazon ElasticBeanstalk 【发布时间】:2018-11-05 01:20:31 【问题描述】:

这个问题有很多答案(question 1question 2),但是这个应该有效的解决方案对我不起作用:

files:
  "/etc/nginx/conf.d/proxy.conf" :
    mode: "000755"
    owner: root
    group: root
    content: |
        client_max_body_size 50M;

我已经通过 ssh 检查了这个创建的文件的状态和内容,并且它是正确的。我也尝试了其他值并多次重新启动服务器。

client_max_body_size 0;

http 
   client_max_body_size 50M;

这个值也不起作用。

它只是不会工作,即使“只是”一个 6mb 的图像。它适用于大小约为 0.5mb 的较小图像。这是一款带有“运行 Ruby 2.5 (Puma) 的 64 位 Amazon Linux 2018.03 v2.8.0”的 RoR 应用程序。实例大小为 t2.micro。

【问题讨论】:

你能把nginx -T的输出贴到你的EBS机器上吗? @TarunLalwani pastebin.com/25kmG4Bb 给你 配置好像​​已经应用了,你能不能通过SSH重新加载nginx服务,看看有没有帮助。你也可以显示nginx的错误日志 我已经通过 ebs Web 控制台重新启动了服务器,甚至多次重建了整个环境,error.log 没有显示有关此问题的任何问题。也许是因为这个 ebs 环境存在于云端 CDN 后面? 这是问题中缺少的重要细节。但是看看限制docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/…它应该仍然在安全区 【参考方案1】:

试试这个。它对我有用:

content: |
    server 
        ***your server configuration***

        location / 
             client_max_body_size 100M;
        
    

【讨论】:

虽然这可能是答案,但请添加更多详细信息并解释为什么它是答案。 这里有一些示例配置,其中还有一个带有client_max_body_size 的配置。希望它有助于提供一些背景信息。 gist.github.com/nateware/3988974

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

413 请求实体太大 nginx django

错误413请求实体过大

Node/Nginx,413请求实体太大,client_max_body_size设置

413 请求实体太大 - 文件上传问题

413 Request Entity Too Large(请求实体太大)

413请求实体太大