在我的网站托管服务商中,我已经(通过phpinfo)看到了

  • post_max_size = 8Mb
  • upload_max_filesize = 16Mb

  • 这使我认为我应该能够以16Mb的大小上传文件。
    但是,当我通过post方法执行此操作时(通常),post_max_size接管并声明我发送了太多消息。

    允许发送最大16Mb的文件的方法是什么?
    GET-PUT-其他?

    希望有人可以帮我澄清一下。

    西蒙

    最佳答案

    upload_max_filesize是任何单个文件的限制。post_max_size是整个请求的限制,可能包括多个文件。

    给定post_max_size = 20Mupload_max_filesize = 6M,您最多可以上传3个6M的文件。如果改为post_max_size = 6Mupload_max_filesize = 20M,那么您只能在点击post_max_size之前上传一个6M文件。设置upload_max_size> post_max_size并没有帮助。

    如何识别遍历post_max_size并不明显。 $_POST$_FILES将为空,但$_SERVER['CONTENT_LENGTH']将>0。如果客户端只是没有上传任何发布变量或文件,则$_SERVER['CONTENT_LENGTH']将为0。

    10-08 14:37