PHP上传大文件报错

作者: Timeless 更新时间: 阅读量: 19

PHP后端上传大文件报错,使用探针文件(类似phpinfo)查看upload_max_filesizepost_max_size,以及后端程序设置最大上传文件大小是否符合需求

后端程序的设置不用多说了,就说说环境的配置

1.Apache+PHP环境

打开php.ini设置合适的值

file_uploads = On 打开文件上传选项,

upload_max_filesize(默认2M) 上传文件上限,

post_max_size(默认8M) post上限 

如果要上传比较大的文件,仅仅以上两条还不够,必须把服务器缓存上限调大,把脚本最大执行时间变长,加了下面的内容后php执行上传就没什么问题

; Maximum execution time of each script, in seconds脚本最大执行时间 
max_execution_time = 1800
; Maximum amount of time each script may spend parsing request data 
max_input_time = 1800 
; Maximum amount of memory a script may consume (128MB)内存上限
memory_limit = 128M

2.IIS+PHP环境

如果是IIS+PHP的环境,记得还需要修改IIS的设置哦

1、打开“Internet 信息服务(IIS)管理器”;
2、关闭IIS服务;
3、双击“你的网站“→双击中间窗格中的“请求筛选”→单击右侧窗格的“编辑功能设置”→修改“请求限制”下面的“允许的最大内容长度”,默认是30M,改为合适的值,点击“确定”;

4、重新启动IIS,再上传试试。

3.Nginx+PHP环境

一般修改/nginx/conf/nginx.conf文件,部分集成环境有vhost.conf用来配置多个站点的,你也可以改vhost里面对应的站点

location / {
      root  html;
      index index.html index.htm;
      client_max_body_size  1000m;
 }

加上了client_max_body_size字段,设置合适的值

然后重启Nginx    --  nginx -s reload