PHP.INI配置:文件上传功能配置教程

昨天分享了在PHP网站开发中如何在php.ini中配置实现session功能的 PHP教程,今天继续分享在利用PHP实现文件上传功能时几点关键php.ini的配置。

  说到在php.ini中的文件上传的配置,其实在以前介绍PHP文件上传功能代码实例教程以及Jquery AjaxUpload实现文件上传功能代码实例教程时我都有所说起。PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dir、upload_max_filesize、post_max_size等选项。php

  php.ini中文件上传功能配置选项说明linux

  打开php.ini配置文件找到File Uploads安全

  file_uploads = Onsession

  默认容许HTTP文件上传,此选项不能设置为OFF。post

  upload_tmp_dir =学习

  默认为空,此选项在手动配置PHP运行环境时,也容易遗忘,若是不配置这个选项,文件上传功能就没法实现,这个选项设置的是文件上传时存放文件的临时目录,你必须给这个选项赋值,好比upload_tmp_dir =’/leapsoulcn’,表明在C盘目录下有一个leapsoulcn目录,和session配置同样,若是你是在linux环境下,你必须赋予这个目录可写权限。网站

  如何上传超过8M的大文件?spa

  上传大文件主要涉及配置upload_max_filesizepost_max_size两个选项。教程

  php.ini配置文件中的默认文件上传大小为2M,php初学者容易犯的一个错误是在编写文件上传功能时经过设置上传文件最大大小的表单区域,即容许上传文件的最大值,max_file_size(隐藏值域)的值来规定上传文件的大小,其实通常别人能够绕过这个值,因此安全起见,最好是在php.ini配置文件中配置upload_max_filesize选项,设定文件上传的大小。内存

  默认upload_max_filesize = 2M,即文件上传的大小为2M,若是你想上传超过8M的文件,好比20M,你必须设定upload_max_filesize = 20M。

  可是光设置upload_max_filesize = 20M仍是没法实现大文件的上传功能,你必须修改php.ini配置文件中的post_max_size选项,其表明容许POST的数据最大字节长度,默认为8M。若是POST数据超出限制,那么$_POST和$_FILES将会为空。要上传大文件,你必须设定该选项值大于upload_max_filesize指令的值,我通常设定upload_max_filesize和post_max_size值相等。另外若是启用了内存限制,那么该值应当小于memory_limit选项的值。

  文件上传的其余注意事项

  在上传大文件时,你会有上传速度慢的感受,当超过必定的时间,会报脚本执行超过30秒的错误,这是由于在php.ini配置文件中max_execution_time配置选项在做怪,其表示每一个脚本最大容许执行时间(秒),0 表示没有限制。你能够适当调整max_execution_time的值,不推荐设定为0。

  至此,在php.ini配置文件中对文件上传选项进行配置的PHP教程就介绍完毕了,经过上面的步骤实践与学习,再结合PHP程序,文件上传功能就能够实现了。

  PHP网站开发教程-leapsoul.cn版权全部,转载时请以连接形式注明原始出处及本声明,谢谢。

相关文章
相关标签/搜索