我的编程空间,编程开发者的网络收藏夹
学习永远不晚

php 只能上传1k内的文件怎么办

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

php 只能上传1k内的文件怎么办

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php 只能上传1k内的文件怎么办?

PHP 文件上传限制问题解决:

PHP 大文件上传占用大量资源,因此需要对上传的大小进行限制,以下为相关的三个参数:

client_max_body_size
upload_max_filesize
post_max_size

与以上相对应的三个报错信息:

Warning: POST Content-Length of 9663102 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
$_FILES['file']['error']==1
nginx错误:413 Request Entiry Too Large

client_max_body_size 用于设置客户端 Request body(请求体)的大小上限,要上传的文件就在 body 体 中,所以此参数可以间接的看做是对文件上传大小的限制。

nginx 服务器通过请求头的 Content-Length 确定 body 体的大小。超过设置的上限会返回错误码 413 Request Entity Too Large,将此参数设置为 0 可以取消对长度的限制。

Syntax:    client_max_body_size size;
Default:   
client_max_body_size 1m;
Context:    http, server, location

client_max_body_size 可以设置在 http、server、location 块中,所以我们可以对域名甚至一个请求地址来提高上传包的大小值。

php错误:

Warning: POST Content-Length of 9663102 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

此时为上传文件大小大于 post_max_size 。

php 无警告但是获取不到上传的文件

此时 $_FILES['file']['error']==1 ,错误原因是上传文件的大小小于 post_max_size 但是大于 upload_max_filesize 。

知识点开扩展:

PHP和Nginx 文件上传大小限制问题解决方法

对于nginx+php的一些网站,上传文件大小会受到多个方面的限制,一个是nginx本身的限制,限制了客户端上传文件的大小,一个是php.ini文件中默认了多个地方的设置。

所以为了解决上传文件大小限定的问题必须要做出多处修改。以下整理了几个地方。

修改/usr/local/nginx/conf/nginx.conf 文件,查找 client_max_body_size 将后面的值设置为你想设置的值。比如:

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
     # 
     location ~ \.php$ { 
       root      /home/www/htdocs; 
       fastcgi_pass  127.0.0.1:9000; 
       fastcgi_index index.php; 
       fastcgi_param SCRIPT_FILENAME /home/www/htdocs$fastcgi_script_name; 
       include    fastcgi_params; 
   
       client_max_body_size 35m;    #客户端上传文件大小设为35M 
       client_body_temp_path /home/www/nginx_temp;    #设置临时目录 
     }

附录:Nginx有一个Upload组件:

上传速率,上传Body大小,也就是上传文件时可能较大?

client_max_body_size 1024M
upload_limit_rate 158k

如下:

location /upload {
      upload_pass   /up.php;
      upload_cleanup 400 404 499 500-505;
      #upload_store  /data/app/test.local/upload_tmp;
      upload_store  /tmp;
      upload_store_access user:r;
      client_max_body_size 1024M;
      upload_limit_rate 158k;
      upload_set_form_field "${upload_field_name}_name" $upload_file_name;
      upload_set_form_field "${upload_field_name}_content_type" $upload_content_type;
      upload_set_form_field "${upload_field_name}_path" $upload_tmp_path;
      upload_aggregate_form_field "${upload_field_name}_md5" $upload_file_md5;
      upload_aggregate_form_field "${upload_field_name}_size" $upload_file_size;
      upload_pass_form_field "^.*$";
      #upload_pass_form_field "^pid$|^tags$|^categoryid$|^title$|^userid$|^user_id$|^is_original$|^upload_file_name$|^upload_file_content_type$|^upload_file_path$|^upload_file_md5$|^upload_file_size$";
    }

2、修改php.ini

upload_max_filesize = 8M  
post_max_size = 10M  
memory_limit = 20M 
max_execution_time=300 
file_uploads = On #默认允许HTTP文件上传,此选项不能设置为OFF。
upload_tmp_dir =/tmp/www

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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

php 只能上传1k内的文件怎么办

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

php 只能上传1k内的文件怎么办

php只能上传1k内的文件的解决办法:1、找到并打开php.ini配置文件;2、修改“client_max_body_size”和“upload_max_filesize”以及“post_max_size”的值即可。
2015-09-13

如何解决php只能上传1k内的文件问题

这篇文章主要讲解了“如何解决php只能上传1k内的文件问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决php只能上传1k内的文件问题”吧!php只能上传1k内的文件的解决办法:1、
2023-06-25

php没有文件被上传怎么办

php没有文件被上传的解决办法:1、修改php.ini,设置上传文件的大小;2、在httpd.conf中添加“php_value upload_max_filesize "300M"”;3、重启服务器即可。
2021-09-05

php怎么实现文件上传功能

在PHP中,可以使用`$_FILES`超全局变量来处理文件上传功能。首先,在HTML表单中设置`enctype="multipart/form-data"`属性,以确保文件能够正确地被上传:```html```然后,在PHP脚本中,可以使用
2023-08-14

虚拟空间不能FTP上传文件怎么办

这期内容当中小编将会给大家带来有关虚拟空间不能FTP上传文件怎么办,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。如果您的主机是租用的虚拟主机,当您上传文件时却不能上传检查原因如下.如果您的主机是租用的虚拟
2023-06-12

pycharm只能运行一个文件怎么办

解决 pycharm 只能运行一个文件的问题:激活其他运行配置。禁用调试器。检查文件路径是否正确。取消选中 "suspend process" 选项。检查外部工具的兼容性。如果以上步骤不起作用,请联系 pycharm 社区寻求帮助。解决 P
pycharm只能运行一个文件怎么办
2024-04-25

gitee文件传输不上怎么办

Gitee是一款备受欢迎的代码托管平台,许多人在使用该平台进行代码管理和分享。然而,在使用Gitee平台时,有时会发现上传文件的过程非常缓慢,甚至无法上传文件。这可能会造成很大的困扰,许多人会选择放弃使用该平台。本文将介绍Gitee文件传输
2023-10-22

怎么解决php不能上传中文文件问题

这篇文章主要介绍“怎么解决php不能上传中文文件问题”,在日常操作中,相信很多人在怎么解决php不能上传中文文件问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决php不能上传中文文件问题”的疑惑有所
2023-06-20

php上传文件的代码怎么写

这篇文章主要介绍“php上传文件的代码怎么写”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php上传文件的代码怎么写”文章能帮助大家解决问题。推荐操作系统:windows7系统、PHP5.6、DEL
2023-06-30

php多文件上传怎么处理

在 PHP 中处理多文件上传可以使用 $_FILES 超全局变量来获取上传文件的信息。首先,需要在表单中设置 enctype="multipart/form-data" 属性来提供支持文件上传的功能:```html```然后,在服务器端的
2023-10-12

php多文件上传怎么实现

在PHP中实现多文件上传,可以通过使用HTML表单和PHP来处理上传的文件。以下是一个简单的示例代码:创建一个HTML表单用于上传文件:
php多文件上传怎么实现
2024-03-06

php上传中文文件无法上传问题怎么解决

php上传中文文件无法上传的解决办法:1、通过“iconv("GBK", "UTF-8", $content);”方法将中文字符编码转换一下;2、将文件重命名即可。
2023-05-14

java怎么实现文件的上传功能

今天小编给大家分享一下java怎么实现文件的上传功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、上传界面<%@ pag
2023-06-29

怎么利用​PHP中的 $_FILES上传文件

小编给大家分享一下怎么利用PHP中的 $_FILES上传文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!PHP 中的$_FILESPHP全局$_FILES包含文
2023-06-14

php上传文件大小怎么限制

可以通过以下几种方法来限制PHP上传文件的大小:1. 在php.ini文件中设置上传文件的最大大小:- 打开php.ini文件,找到upload_max_filesize和post_max_size两个配置项。- 修改这两个配置项的值为所需
2023-10-18

php上传文件过大怎么解决

在PHP上传文件过大时,可以通过以下方法解决:1. 修改php.ini配置文件:找到php.ini文件,将以下参数的值调整为合适的大小:- upload_max_filesize:设置上传文件的最大大小;- post_max_size:设置
2023-10-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录