记一次解决文件上传限制

2019/7/16 23:50:25Chixm87 阅读0 点赞6 评论

前言

在迁移网站过程中,导入数据库的时候发现上传文件那有个最大限制2048kb,并且上传小于2048kb的单文件也报413 Request Entity Too Large

作为小白的我一看到这些个问题就慌了,心想这可咋整

错误解决办法

在这简单记录下百度上找来的解决办法 使用的环境是Nginx + PHP + MySQL + WordPress

phpMyAdmin相关问题

由于自己太菜。命令模式下MySQL玩不起来,就装了个phpMyAdmin,而phpMyAdmin一次导入数据库文件最大限制为2M, 而我sql文件可不止2M,于是百度看了下各位大佬总结出来的教程大致都是修改php.ini文件里的upload_max_filesizepost_max_size来解决的 1、首先打开php.ini,我的php.ini路径是:/etc/php.ini 2、搜索upload_max_filesize可以看到默认为2M,因此我将其修改为50M。具体多少可以根据自己实际需求去改 !](https://assets.moshanghua.net/images/msh-1732-01.png) 3、然后搜索post_max_size,这个修改为和upload_max_filesize一样的值

Nginx相关问题

phpMyAdmin改好了但上传文件是还是提示413 Request Entity Too Large 遇到不要换,不要怀疑你改错了php.ini,这是nginx捣的鬼,nginx默认限制上传文件大小1M。 知道问题所在,解决就好办了,找到自己主机的nginx.conf配置文件,稍作修改即可 1、打开nginx服务的配置文件nginx.conf, 我的nginx.conf路径是:/etc/nginx/nginx.conf

2、将以下代码粘贴到nginx.conf内,我这里配置的是50M,可以其他

NGINX
client_max_body_size 20M;

可以选择在http{ }中设置:client_max_body_size 20m;

也可以选择在server{ }中设置:client_max_body_size 20m;

还可以选择在location{ }中设置:client_max_body_size 20m;

三者有区别

设置到http{}内,控制全局nginx所有请求报文大小

设置到server{}内,控制该server的所有请求报文大小

设置到location{}内,控制满足该路由规则的请求报文大小

NGINX
http {
client_max_body_size 100m;
include       mime.types;
default_type  application/octet-stream;

3、重新nginx服务

NGINX
systemctl restart nginx

最后,本次上传限制到这也就结束了,博客数据也成功恢复过来,简单记录本次遇到的错误!

4、最后保存php.ini文件后重启服务器就可以导入超过2M的数据库了,记得一定要重启后才能生效 ![

评论区

  • hrhb
    #3
    hrhb2020/5/18 10:46:48

    空包单号网全国地址任意发、一单一用快递单号www.dy***.com

    • Xiaomo
      #1
      Xiaomo2020/5/25 06:21:22

      @hrhb 再次公开处刑 [doge1]

  • bxli
    #2
    bxli2020/5/17 11:01:59
    • Xiaomo
      #1
      Xiaomo2020/5/25 06:17:26

      @bxli 公开处刑 [doge1]

  • Henry
    #1
    Henry2019/7/18 17:09:53

    猜猜我是谁啊啊啊 [doge1]

    • 呆头鹅小陌
      #1
      呆头鹅小陌2019/7/19 00:37:45

      @Henry 花里胡哨的,不猜 [hashiqi]