PHP上传文件大小限制的问题(转)
在用PHP进行文件上传的操作中,需要知道怎么控制上传文件大小的设置,而文件可传大小是受到多种因素制约的,现总结如下: 1、php.ini:upload_max_filesize 所上传的文件的最大大小。默认值2M。 2、php.ini:memory_limit 本指令设定了一个脚本所能够申请到的最大内存字节数,默认值8M。如果不需要任何内存上的限制,必须将其设为 -1。如果内存不够,则可能出现错误:Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes) 3、php.ini:post_max_size 设定POST数据所允许的最大大小。此设定也影响到文件上传。要上传大文件,该值必须大于 upload_max_filesize。 4、php.ini:max_execution_time = 30 ; Maximum execution time of each script, in seconds 5、php.ini:max_input_time = 60 ; Maximum amount of time each script may spend parsing request data 6、如果用到mysql的BLOB进行二进制文件存储,则需要设置my.ini:max_allowed_packet=xxM 7、httpd.conf
LimitRequestBody 1024000000Options Indexes FollowSymLinks MultiViews ExecCGIAllowOverride AllOrder allow,denyAllow from all 如果透过 .htaccess 设定,储存档案后会立即生效;如透过 httpd.conf 设定,须要重新启动 Apache。
Send this file: 这里设置MAX_FILE_SIZE = 30000,期待一种可能,使得浏览器在传送文件之前能够依此作出预先判断,如果文件尺寸大于30000字节,则不执行实际的POST动作。也就是不往服务器发送文件内容,而是直接在客户端提醒用户“你试图上传的文件超过30000字节”。 MAX_FILE_SIZE还有一个用场:后台PHP会判断接收到的文件大小是否大于这个值,如果超出,$_FILES['thisfile']['error']会被设置为UPLOAD_ERR_FORM_SIZE(2),同时放弃保存临时文件,将$_FILES['thisfile']['size']置0。
问题就出在main/rfc1867.c中判断文件是否超长的这部分代码上。php每次从buffer中读取FILLUNIT字节长度的内容后,首先判断“已经读到的内容长度(total_bytes)”是否大于MAX_FILE_SIZE,然后再增加“已经读到的内容长度(total_bytes)”。这样一来,和预计的结果之间至多会有FILLUNIT字节的误差,而FILLUNIT=1024*5=5K。(点击bug了解详细内容) |
转载于:https://www.cnblogs.com/qq78292959/p/4127764.html
PHP上传文件大小限制的问题(转)相关推荐
- SpringBoot上传文件大小限制
SpringBoot默认上传文件大小不能超过1MB,超过之后会报以下异常: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSize ...
- Web.Config文件配置之限制上传文件大小和时间
在邮件发送系统或者其他一些传送文件的网站中,用户传送文件的大小是有限制的,因为这样不但可以节省服务器的空间,还可以提高传送文件的速度.下面介绍如何在Web.Config文件中配置限制上传文件大小与时间 ...
- 【转载】解决Apache2+PHP上传文件大小限制的问题
原文出处:http://evol1216.blog.163.com/blog/static/13019958020106783623528/ 在用PHP进行文件上传的操作中,需要知道怎么控制上传文件大 ...
- 修改PHP上传文件大小限制的方法
修改PHP上传文件大小限制的方法 1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完. 但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停 ...
- PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法
PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法 参考文章: (1)PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法 (2)https://ww ...
- ubuntu php上传文件,Ubuntu中增加apache上传文件大小限制(突破Aapache默认2M上传限制)...
upload_max_filesize – 没错就是这个,最大上传文件大小限制.你会发现此处默认为2M. memory_limit – 单个脚本可用最大内存,此设置可以防止设计有缺陷的PHP脚本占用所 ...
- nginx上传文件大小
采用nginx作反向代理,出现了一个诡异的问题,小文件可以提交,大文件会报500内部错误.这个是什么原因导致的呢? 查wiki可知,上传文件大小相关的有三个配置 client_body_buffer_ ...
- nginx:413 Request Entity Too Large 及 修改 PHP上传文件大小配置
开发环境:CentOS + Nginx + PHP + MySql + phpMyAdmin 在用 phpMyAdmin 进行 sql 数据库导入的时候,经常需要上传比较大的 sql 数据文件,而这时 ...
- 修改Nginx与Apache配置参数解决http状态码:413上传文件大小限制问题
一.修改Nginx上传文件大小限制 我们使用ngnix做web server的时候,nginx对上传文件的大小有限制,默认是1M. 当超过大小的时候会报413(too large)错误.这个时候我们要 ...
- java修改文件的大小限制_Struts2修改上传文件大小限制方法解析
首先struts上传最大大小由两个地方决定. struts.multipart.maxSize决定整个post的form最大是多大,所以这个限制是最初的.默认大小是接近2M,在struts的defau ...
最新文章
- silverlight 客户端之间的通讯
- Android中finish()、System.exit()、KillProcess()的区别
- struts2的OGNL表达式(三)
- 在微型计算机机箱的面板上,【简评】全侧透快拆设计,迎广101机箱体验
- python下载器2
- 老李分享:android手机测试之适配(1)
- Android文件资源(raw/data/asset)的存取
- 基于树莓派的远程开锁器
- 计算机声音如何处理器,我电脑运行的声音很大,而且CPU的温度总在70到80之间,怎么办啊?...
- uniapp 蓝牙连接条码枪/扫描枪 HID模式
- ArcGIS Engine基础(7)之栅格数据集常用操作
- SVG 绘制可交互的中国地图
- 《内功修炼系列》之-递归从入门到入土(收藏版)
- Liteos-A任务调度之任务上下文切换
- lajp linux教程,linux IMX6 汇编点亮一个LED灯
- qlikview连接数据库
- 用DOS命令打开IE浏览器、我的文档等等
- RecyclerView的使用(二)——拖曳移动和滑动删除
- WT588F34B语音芯片单曲更换语音功能的实现与应用
- 【本人秃顶程序员】我简历上的Java项目都好low,怎么办?