AWS Elastic Beanstalkfile upload限制问题

我在AWS Elastic Beanstalk实例上遇到问题,因此似乎无法上传6MB大小的PDF文件。 首先,让我提供更多的背景:

  • 运行的应用程序是一个expression式引擎(EE)应用程序
  • upload_max_filesize设置为16M
  • post_max_size被设置为32M
  • max_execution_time设置为300
  • 通过Elastic Beanstalk上的EE应用程序将file upload到Amazon S3存储桶。

我能够在1-2MB的区域成功上传PDF,但是当我尝试上传6MB文件时,它已经达到100%的上传速度,然后把我redirect到EE的主屏幕,并且文件没有被上传。

有谁知道或有任何想法,我不能上传6MB文件,因为上面的configurationvariables被设置为这样?

如果您使用NGINX或其他代理服务器,可能与它的client_max_body_size指令有关。 要修复它,应用程序根目录中创build文件夹.ebextensions和一个文件.ebextensions/01_nginx.config 。 然后告诉构build脚本在构build环境时添加此指令,并将其添加到您创build的.ebextensions/01_nginx.config

 container_commands: 01_reload_nginx: command: "service nginx reload" files: "/etc/nginx/conf.d/proxy.conf": mode: "000755" owner: root group: root content: | client_max_body_size 25M; 

提交你的文件夹git ,如果你正在使用它。 然后eb deploy ,交叉手指,并尝试上传您的6MB PDF。

不过,根据我的经验,有时候你必须彻底改造整个环境才能使之工作。