Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 621|回复: 0

解决phpmyadmin上传文件大小限制的配置方法

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-4-15 22:35:42 | 显示全部楼层 |阅读模式

    解决phpmyadmin上传文件大小限制的配置方法

     phpmyadmin导入SQL文件时涉及到phpmyadmin上传文件大小限制问题,默认phpmyadmin上传文件大小为2M,如果想要phpmyadmin上传超过2M大文件,就需要修改phpmyadmin上传文件的大小配置或者将大文件分几批上传,相对来说修改phpmyadmin上传文件大小的限制来得方便很多。解决phpmyadmin上传文件大小限制问题涉及修改php.ini配置文件和phpmyadmin配置文件。

      修改phpmyadmin上传文件大小限制主要分修改php.ini配置文件(php安装文件内)和phpmyadmin配置文件(config.inc.php)两个步骤。

      第一步:修改php.ini配置文件中文件上传大小配置

      此步骤与一般的PHP.INI配置文件上传功能方法一致,需要修改php.ini配置文件中upload_max_filesizepost_max_size两个选项值,具体修改方法请参考: 说到在php.ini中的文件上传的配置,其实在之前介绍PHP文件上传功能代码实例教程以及Jquery AjaxUpload实现文件上传功能代码实例教程时我都有所提及。PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dir、upload_max_filesize、post_max_size等选项。

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

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

      file_uploads = On

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

      upload_tmp_dir =

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

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

      上传大文件主要涉及配置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执行时间及内存限制实现phpmyadmin上传大文件功能

      如果想要phpmyadmin上传大文件,还需修改php.ini配置文件中的max_execution_time(php页面执行最大时间)、max_input_time(php页面接受数据最大时间)、memory_limit(php页面占用的最大内存)三个配置选项,这是因为phpmyadmin上传大文件时,php页面的执行时间、内存占用也势必变得更长更大,其需要php运行环境的配合,光修改上传文件大小限制是不够的。

      第三步:修改phpmyadmin配置文件

      在完成php.ini的相关配置后,还需要修改phpmyadmin配置。

      1、修改phpmyadmin config配置文件中的$cfg['ExecTimeLimit']配置选项,默认值是300,需要修改为0,即没有时间限制。

      2、修改phpmyadmin安装根目录下的import页面中的$memory_limit

    1
    2
    3
    4
    5
    6
    7
    8
    9

    $memory_limit = trim(@ini_get('memory_limit'));
    // 2 MB as default
    if (empty($memory_limit)) {
        $memory_limit = 2 * 1024 * 1024;
    }
    // In case no memory limit we work on 10MB chunks
    if ($memory_limit == -1) {
        $memory_limit = 10 * 1024 * 1024;
    }

    说明:首选读取php.ini配置文件中的内存配置选项memory_limit,如果为空则默认内存大小限制为2M,如果没有限制则内存大小限制为10M,你可以结合你php.ini配置文件中的相关信息修改这段代码。

      至此,经过修改php.ini配置文件中的文件上传配置选项以及phpmyadmin配置文件后,即可解决phpmyadmin上传文件大小限制问题,从而实现phpmyadmin上传大文件功能。

    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-16 22:43 , Processed in 0.084071 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表