首页 >后端开发 >php教程 >为什么php 大文件无法上传

为什么php 大文件无法上传

不言
不言原创
2018-07-09 17:51:361937浏览

这篇文章主要介绍了关于php 大文件上传失败的原因及解决方法 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

php.ini无法上传大文件解决办法

1、打开php.ini

2、查找post_max_size:(修改上传大小限制)

表单提交最大数值,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的默认为8m,设置为自己需要的值,此参数建议要设置比upload_max_filesize大一些

3、查找file uploads:(修改上传开关限制)

是否允许通过http上传文件的开关,确认file_uploads = on

4、查找upload_tmp_dir:(修改上传临时文件限制)

文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹如果系统报错提示有“xxx临时目录xxx”的话,这个目录就需要你来设置一个有效目录,没报错就不用管

5、查找upload_max_filesize:(修改上传大小限制)

允 许上传文件大小的最大值,默认为2m,设置为自己需要的值此参数建议不要超过post_max_size值,因为它受控于post_max_size值 (就算upload_max_filesize设置了1g,

而post_max_size只设置了2m时,大于2m的文件照样传不上去,因为它受控于 post_max_size值)

6、如果要上传大于8m的文件,还需要对下面的参数也进行设置:(修改上传时间限制)

查找max_execution_time = 600 ;每个php页面运行的最大时间值(秒),默认30秒

max_input_time = 600 ;每个php页面接收数据所需的最大时间,默认60秒

memory_limit = 8m ;每个php页面所需要的最大内存,默认8m

nginx法上传大文件解决办法

1.client_body_buffer_size 尽量设置的大点,这是基于速度的考虑,如果因为设置的过小,导致上传的文件老要写磁盘,那速度就太慢了。

2.client_body_temp_path 路径要有可写权限,这个是明显的错误了。改正了就好

3.client_max_body_size 设置上传文件的最大值,这个是基于安全的考虑,我们认为正常用户不会或者基本不会上传太大的文件。

可以设置为client_max_body_size 100m; 或者按照自己的业务来设置这个值。

1、打开php.ini

2、查找post_max_size:(修改上传大小限制)

表单提交最大数值,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的默认为8m,设置为自己需要的值,此参数建议要设置比upload_max_filesize大一些

3、查找file uploads:(修改上传开关限制)

是否允许通过http上传文件的开关,确认file_uploads = on

4、查找upload_tmp_dir:(修改上传临时文件限制)

文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹如果系统报错提示有“xxx临时目录xxx”的话,这个目录就需要你来设置一个有效目录,没报错就不用管

5、查找upload_max_filesize:(修改上传大小限制)

允 许上传文件大小的最大值,默认为2m,设置为自己需要的值此参数建议不要超过post_max_size值,因为它受控于post_max_size值 (就算upload_max_filesize设置了1g,

而post_max_size只设置了2m时,大于2m的文件照样传不上去,因为它受控于 post_max_size值)

6、如果要上传大于8m的文件,还需要对下面的参数也进行设置:(修改上传时间限制)

查找max_execution_time = 600 ;每个php页面运行的最大时间值(秒),默认30秒

max_input_time = 600 ;每个php页面接收数据所需的最大时间,默认60秒

memory_limit = 8m ;每个php页面所需要的最大内存,默认8m

nginx法上传大文件解决办法

1.client_body_buffer_size 尽量设置的大点,这是基于速度的考虑,如果因为设置的过小,导致上传的文件老要写磁盘,那速度就太慢了。

2.client_body_temp_path 路径要有可写权限,这个是明显的错误了。改正了就好

3.client_max_body_size 设置上传文件的最大值,这个是基于安全的考虑,我们认为正常用户不会或者基本不会上传太大的文件。

可以设置为client_max_body_size 100m; 或者按照自己的业务来设置这个值。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

php中heredoc的用法

php的后期静态绑定

以上是为什么php 大文件无法上传的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn