如何详细解析PHP中表单直接上传大文件的方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1228个文字,预计阅读时间需要5分钟。
前言:我想通过表单直接提交大文件,Django那方面我也就这么干。而至于PHP,来说,我认为尽管可以设置最大上传大小,但也无法超过内存大小,因为它无法把文件内容都放到p中。
前言
我想通过表单直接提交大文件,django 那边我就是这么干的。而对于 php 来说,我认为尽管可以设置最大上传的大小,但最大也无法超过内存大小,因为它无法把文件内容都放到 php://input 里面。直到我试了一下。
下面话不多说了,来一起看看详细的介绍吧
试验
我创建内存 256M 的虚拟机,通过表单直接上传 2.4G 的文件,发现居然可以,挺惊讶的:
后端是 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 的就不行了,请求会中断 。
本文共计1228个文字,预计阅读时间需要5分钟。
前言:我想通过表单直接提交大文件,Django那方面我也就这么干。而至于PHP,来说,我认为尽管可以设置最大上传大小,但也无法超过内存大小,因为它无法把文件内容都放到p中。
前言
我想通过表单直接提交大文件,django 那边我就是这么干的。而对于 php 来说,我认为尽管可以设置最大上传的大小,但最大也无法超过内存大小,因为它无法把文件内容都放到 php://input 里面。直到我试了一下。
下面话不多说了,来一起看看详细的介绍吧
试验
我创建内存 256M 的虚拟机,通过表单直接上传 2.4G 的文件,发现居然可以,挺惊讶的:
后端是 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 的就不行了,请求会中断 。

