【发布时间】:2020-11-19 05:30:07
【问题描述】:
我在 Elastic Beanstalk 中部署了一个应用程序,更改了一些配置,以便我可以上传更大的文件并重新启动 nginx 服务器。 当我上传一个小于 2 GB 的文件时,它已成功上传。但是,当我上传超过 2 GB 的文件时,它不会成功上传。以下是我在 /etc/nginx/nginx.conf 文件中添加的行:
client_max_body_size 7500M;
proxy_connect_timeout 1200s;
proxy_send_timeout 1200s;
proxy_read_timeout 1200s;
fastcgi_send_timeout 1200s;
fastcgi_read_timeout 1200s;
另外,我在 .ebextensions 中添加了配置文件并放入以下内容:
files:
"/etc/php.d/99uploadsize.ini":
mode: "000644"
owner: root
group: root
content: |
post_max_size = 5000M
upload_max_filesize = 5000M
memory_limit = 5000M
commands:
remove_old_ini:
command: "rm -f /etc/php.d/99uploadsize.ini.bak"
还尝试了以下内容:
files:
"/etc/nginx/conf.d/proxy.conf":
mode: "000755"
owner: root
group: root
content: |
post_max_size = 7500M
upload_max_filesize = 5000M
memory_limit = 7500M
client_max_body_size = 5000M
这是 phpinfo() 快照:
我哪里出错了?请帮助我
【问题讨论】:
-
为什么需要你的 Nginx 服务器来代理上传?
-
之前我得到了“实体太大”,因为它添加了这些行
-
我们需要更多信息。您确定您的 EC2 实例大小有足够的内存和足够的存储空间吗?另外,为什么不直接使用 S3 而不是 EB? EB 实例是易失性的,VM 上的存储不是持久的。
-
@Labu 我们已将内存容量增加到 32 GB,并且我们正在托管服务器端脚本,因此我们无法在 S3 上托管它
-
@user1584253 您是否检查了 phpinfo() 中显示 post_max_size 和 upload_max_filesize 已正确更新的部分?可能没有正确读取这些值。
标签: php amazon-web-services nginx amazon-ec2 amazon-elastic-beanstalk