PHP通过表单直接提交大文件

栏目: PHP · 发布时间: 5年前

内容简介:我想通过表单直接提交大文件,django 那边我就是这么干的。而对于 php 来说,我认为尽管可以设置最大上传的大小,但最大也无法超过内存大小,因为它无法把文件内容都放到我创建内存 256M 的虚拟机,通过表单直接上传 2.4G 的文件,发现居然可以,挺惊讶的:

我想通过表单直接提交大文件,django 那边我就是这么干的。而对于 php 来说,我认为尽管可以设置最大上传的大小,但最大也无法超过内存大小,因为它无法把文件内容都放到 php://input 里面。直到我试了一下。

试验

我创建内存 256M 的虚拟机,通过表单直接上传 2.4G 的文件,发现居然可以,挺惊讶的:

PHP通过表单直接提交大文件

后端是 nginx + php 的方式。反正有关 php.ini 里面需要设置的给它足够大:

# pip.ini
post_max_size = 100000M
upload_max_filesize = 100000M

nginx 在 http 块中添加:

# nginx.conf
client_max_body_size 100000m;

难道 PHP 进化了?我把其他版本试了一下,发现 PHP7.0 及其以上的才能成功,5.6 的就不行了,请求会中断

文件 4G 多的时候又不行了,不知道哪里还需要设置:

PHP通过表单直接提交大文件

改用apache试试

apache 我得用本地的 wamp 来。 httpd.conf 需要设置:

# httpd.conf
LimitRequestBody 83886080000

apache 版本,一样得7.0以上才能直接上传大文件,但apache可以上传 4G 多的文件,不清楚为什么,难道因为我本地的内存比较大?

PHP通过表单直接提交大文件


以上所述就是小编给大家介绍的《PHP通过表单直接提交大文件》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

统计学习方法

统计学习方法

李航 / 清华大学出版社 / 2012-3 / 38.00元

详细介绍支持向量机、Boosting、最大熵、条件随机场等十个统计学习方法。一起来看看 《统计学习方法》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

html转js在线工具
html转js在线工具

html转js在线工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具