广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >Nginx/PHP文件上传限制说明
  • 502
分享到

Nginx/PHP文件上传限制说明

nginxphppost_max_size 2023-09-06 18:09:38 502人浏览 独家记忆
摘要

0、背景说明 通过PHP程序上述文件时,是否有限制取决多个因素,注意这里表述的是“是否有限制”, 这里的限制不光是常认为的大小的限制 ,还有上传时间的限制。 另外除了php服务本身之外,一般也和 PH

0、背景说明

通过PHP程序上述文件时,是否有限制取决多个因素,注意这里表述的是“是否有限制”, 这里的限制不光是常认为的大小的限制 ,还有上传时间的限制。
另外除了php服务本身之外,一般也和 PHP 上层的 代理集群有关系,常见的代理集群是 Nginx/Openrestry

1、关于代理集群限制上传

代理集群这里以常用的 Nginx 为例介绍

1.1、client_max_body_size

默认为1M,可以配置在 Http 或者 server 、location 中。

一般的建议是配置在 具体的server中,因为nginx支持多server,每个server的功能不同,对于如果有上传需求时,上传的大小限制也许也不一样。

1.2、client_body_timeout

默认值是60秒,需要注意的是这个参数的含义:

Nginx的 client_body_timeout控制的仅仅是 请求主体 body 的传输时间。

所以如果在上传大文件的时候,客户端配置超时时间大于60秒,且实际上传时间也超过了60秒,上传的请求并不会中断。

Nginx 会继续等待客户端发送请求的其余部分,即使超过了client_body_timeout的设置。

只有当整个请求完成或客户端关闭连接时,NGINX才会终止该请求

1.3、client_header_timeout

读取请求头的超时时间,默认为60秒,和上面 client_body_timeout 读取body体一样,仅读取 header头部的时间。

从上面三个参数知道,Nginx 侧实际限制文件上传时,只限制文件的大小,不限制文件上传的时长

如果要限制文件的时长:

1)通过后端服务,比如PHP的 max_execution_time

2)通过客户端ajax请求配置timeout超时

附加配置项说明:

● proxy_connect_timeout

Nginx转发到后端的请求无法被立即处理时,被放到Nginx的待处理池中等待被处理的时间,默认为60秒。

● proxy_read_timeout

Nginx请求被后端处理后。Nginx等待后端处理结果的等待时间,默认为60秒。也就是服务器的响应时间

● proxy_send_timeout

Nginx请求被后端处理后,后端把数据返回给Nginx的时间,默认60秒。

2、关于PHP上传文件限制

PHP侧限制文件上传,一共有三个参数共同决定

2.1、max_execution_time

页面最的长执行时间,默认为30秒。
即使页面上传时设置超时时间超过这个值,30秒之后也会中断请求,页面报错。

配置为0,表示不做时间限制

2.2、post_max_size

定义POST上传数据时最大可上传的大小,默认为2M。

如果实际POST过来的数据大于该值,则 $_POST和 $_FILES 这两个全局变量就为空值。

2.3、upload_max_filesize

定义上传文件时可接受的文件大小的最大值。默认为8M。这个根据实际业务场景配合Nginx进行调整

和文件上传有关的配置项说明:

● file_uploads = On 开启文件上传

● post_max_size = 50M 最大Post数据大小

● upload_max_filesize = 50M 最大上传文件大小

● upload_tmp_dir = ‘/tmp/phpupload’ 上传时临时目录,默认为空,系统指定

● max_execution_time = 120 单个PHP脚本在服务器最大执行时间,单位为秒

● max_input_time = 120 PHP脚本从客户端接受请求数据的最大时间,这个时间包含了POST、GET和文件上传等数据

● memory_limit = 100M 单个PHP脚本能申请到的最大内存空间

3、前端配置的上传文件时间限制

一般是在ajax请求中设置timeout属性来设置上传的超时时间限制

DOCTYPE html><html lang="en">  <head>    <title>测试超时响应title>    <script src="./js/Jquery/jquery.js">script>  head>  <body>    <button>发起超长时间请求button>    <script>      document.querySelector('button').onclick = function() {        $.ajax({          url: 'http://127.0.0.1:8080/uploadBigFile',          // 通过timeout属性设置超时,单位是毫秒          timeout: 120000,          error: function(err) {            console.log(err)          },          success: function(res) {            console.log(res)          }        })      }    script>  body>html>

所以在排查完毕 Nginx、PHP服务本身确认上传限制都在合理的范围之内还有超时报错那么很大可能是 客户端做了 timeout 超时限制


今天的学习就分享都这里,感觉喜欢改分享的,可以关注个人微信公众号 搜 DailyJobOps 或者 全栈运维

来源地址:https://blog.csdn.net/eaglecolin/article/details/130932276

--结束END--

本文标题: Nginx/PHP文件上传限制说明

本文链接: https://www.lsjlt.com/news/397327.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Nginx/PHP文件上传限制说明
    0、背景说明 通过PHP程序上述文件时,是否有限制取决多个因素,注意这里表述的是“是否有限制”, 这里的限制不光是常认为的大小的限制 ,还有上传时间的限制。 另外除了PHP服务本身之外,一般也和 PH...
    99+
    2023-09-06
    nginx php post_max_size
  • php上传文件大小怎么限制
    可以通过以下几种方法来限制PHP上传文件的大小:1. 在php.ini文件中设置上传文件的最大大小:- 打开php.ini文件,找到...
    99+
    2023-10-18
    php
  • PHP-nginx-ctfShow文件上传漏洞
    CTFSHOW-文件上传-151到161关卡 151 152-JS验证+MIME Content-Type: image/png 153-JS验证+user.ini https://www.cnblogs.com/N...
    99+
    2023-10-05
    php nginx 安全
  • php文件上传大小限制的方法
    这篇文章主要介绍了php文件上传大小限制的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php有什么特点1、执行速度快。2、具有很好的开放性和可扩展性。3、PHP支持多种...
    99+
    2023-06-14
  • php如何修改上传文件最大限制
    本文小编为大家详细介绍“php如何修改上传文件最大限制”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何修改上传文件最大限制”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。修改方法:1、打开php.ini配...
    99+
    2023-07-05
  • php如何设置上传文件大小限制
    这篇文章将为大家详细讲解有关php如何设置上传文件大小限制,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。方法:首先打开“php.ini”文件;然后将“upload_max_filesize”、“post_...
    99+
    2023-06-14
  • PHP中怎么解决上传文件大小限制
    本篇文章给大家分享的是有关PHP中怎么解决上传文件大小限制,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。PHP上传文件大小限制解决方法:***:在php.ini里面查看如下行:...
    99+
    2023-06-17
  • 怎么在php中修改上传文件的大小限制
    怎么在php中修改上传文件的大小限制?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。修改PHP上传文件大小限制的方法1、修改max_execution_time值...
    99+
    2023-06-15
  • tomcat上传文件大小限制怎么设置
    要设置Tomcat上传文件的大小限制,可以通过以下步骤进行操作: 打开Tomcat的配置文件`server.xml`。该文件通常...
    99+
    2023-10-26
    tomcat
  • github上传文件大小限制怎么配置
    Github对于单个文件的大小限制是100MB,并且对于整个仓库的大小限制是1GB。如果要上传超过这些限制的文件,可以考虑以下几种方...
    99+
    2023-10-26
    github
  • phpmyadmin如何上传限制修改配置文件
    这篇文章将为大家详细讲解有关phpmyadmin如何上传限制修改配置文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。phpmyadmin上传限制修改配置文件方法,难道只...
    99+
    2022-10-18
  • JavaScript 上传文件限制参数案例详解
    项目场景: 1,上传文件限制 功能作用: 1,防止前端操作上传异常文件 2,限制符合的规则,优化展示模型 功能实现: 1,获取file实例 2,执行校验规则方法 代码如下: //...
    99+
    2022-11-12
  • SpringBoot怎么通过配置文件限制文件上传大小
    这篇文章主要介绍SpringBoot怎么通过配置文件限制文件上传大小,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!通过配置文件(yml,properties)限制文件上传大小properties类型配置文件设置#&n...
    99+
    2023-06-29
  • Spring MVC文件上传大小和类型限制以及超大文件上传bug问题
     在上一篇文章中,主要介绍了Spirng MVC环境下的正常情况下文件上传功能实现。在实际开发的时候,还会涉及到上传文件大小和类型的限制,接下来就会对Spirng MVC环境下文件上传大小和类型的限制进行介绍,还会讲解到文件上传大...
    99+
    2023-05-30
    spring mvc 文件
  • 修改phpmyadmin文件上传大小限制的方法
    这篇文章给大家分享的是有关修改phpmyadmin文件上传大小限制的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。有许多站长在使用phpmyadmin导入SQL文件时候会涉及...
    99+
    2022-10-18
  • 如何修改phpmyadmin的上传文件大小限制
    小编给大家分享一下如何修改phpmyadmin的上传文件大小限制,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!解决phpmyad...
    99+
    2022-10-18
  • php如何设置附件上传大小的限制
    PHP是一种广泛使用的服务器端编程语言,通常用于开发Web应用程序,其中许多应用程序都涉及到上传文件。上传附件对于Web应用程序来说非常重要,可是有时候您不得不面对上传文件大小的限制,通常是默认上传文件大小的限制。那么如何设置PHP的附件上...
    99+
    2023-05-14
    php
  • php怎么设置附件上传大小的限制
    本篇内容介绍了“php怎么设置附件上传大小的限制”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!修改php.ini配置文件在php.ini配置...
    99+
    2023-07-05
  • dedecms上传文件大小受限制的修改方法
    织梦dedecms系统上传附件有大小限制,是2M,超过2M的话,就会提示上传失败,那么该如何操作呢? 其实这个还是要根据服务器空间配置进行合理修改,如果服务器或者空间配置较小,建议不要修改太大。否则网站会很卡。 后台首页可以查...
    99+
    2022-10-20
  • vps云服务器上传文件限制怎么解决
    要解决VPS云服务器的文件上传限制,可以考虑以下几种方法:1. 修改服务器配置:检查服务器的配置文件(例如nginx、Apache等...
    99+
    2023-09-28
    vps 云服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作