我获得了一个 Amazon EC2 Ubuntu 实例。我们的任务是创建一个 Web 应用程序,其中包括上传客户端视频。我在本地主机中创建了一个文件上传应用程序,它工作正常。当我将代码迁移到虚拟主机服务器时,我无法上传任何视频,甚至无法上传任何超过2Mb
。我尝试编辑php.ini
环境upload_max_filesize
to 50M
和 post_max_size 为1000M
.
重启Apache这么多次后,更新并没有反映在我的phpinfo()
信息,但更改已保存在我的php.ini
file.
我怀疑给我的 Amazon EC2 实例有文件上传限制,但我不确定我是否正确。如果我错了,我该如何覆盖下面的配置?任何帮助将非常感激。
UPDATE:
我什至确保我正在编辑正确的配置文件。以下是屏幕截图:
UPDATE:
我尝试按照中所说的link https://forums.aws.amazon.com/message.jspa?messageID=410421#没有运气。我对链接有很多疑问,例如:
- 什么是汤姆卡切斯意思是关于
S3 bucket
?我将配置文件上传到/var/www/html/.ebextensions
。我做的事正确吗?
My zzz.ini
包含下面的代码,我将其放入/etc/php.d/zzz.ini
:
[php]
post_max_size = 1000M
upload_max_filesize = 50M
My myconfigfile.config
位于/var/www/html/.ebextensions/myconfigfile.config
并包含以下代码:
files:
"/etc/php.ini":
mode: "000644"
owner: root
group: root
source: http://mybucketname.s3.amazonaws.com/php.ini
"/etc/php.d/zzz.ini":
mode: "000644"
owner: root
group: root
source: http://mybucketname.s3.amazonaws.com/zzz.ini
如何知道我的实例的存储桶名称?
我也复制了我的php.ini
from /etc/php/7.0/apache2/php.ini
to /etc/php.ini
并重新启动阿帕奇。仍然没有任何变化。我做的事正确吗?
UPDATE:
我向向我提供 EC2 实例的人询问存储桶名称,她的答复是。
是的,您已获得 EC2 实例的访问权限。 S3则不同
亚马逊提供的服务,并且不会自动提供给
EC2 实例。我们可以为您在 S3 中创建一个存储桶,但可能不会
不再需要。
EC2实例有大约8GB的存储空间。你应该能够
在 EC2 文件系统中存储多个大于 2MB 的视频,并且
直接访问它们。
使用 S3 进行文件上传是一个好主意,尤其是当您的软件
投入生产。但是,为了简化设置,请使用
文件系统来存储视频。
UPDATE :
运行以下命令:
php -i | grep -i max_size
yields: post_max_size => 1000M => 1000M
grep -ir "max_size" /etc/php/7.0/apache2/conf.d/
什么也不产生。
grep -ir "max_size" /etc/php/7.0/
yields
/etc/php/7.0/fpm/php.ini:post_max_size = 1000M
/etc/php/7.0/apache2/php.ini:post_max_size = 1000M
/etc/php/7.0/cli/php.ini:post_max_size = 1000M
My phpinfo()
可以通过这个访问link http://18.236.72.77/info.php