PHP:无法增加最大上传限制

PHP:无法增加最大上传限制

我在 Debian Squeeze 上使用 Apache + PHP 5.3.3-7,从存储库安装。Debian Squeeze 中的 PHP 发行版包含 Suhosin 补丁。我在上传大于 cca 4 MB 的文件时遇到问题,一些不可见的限制阻止 PHP 接受上传。

php.ini有:

  1. 设置 upload_max_filesize = 50M
  2. 设置 post_max_size = 50M
  3. 设置内存限制 = 256M
  4. 设置最大执行时间 = 120
  5. 设置最大输入时间 = 120

suhosin.ini

  1. suhosin.内存限制 = 256M
  2. suhosin.post.max_value_length = 50000000
  3. suhosin.request.max_value_length = 50000000
  4. suhosin.post.max_vars = 200000
  5. suhosin.request.max_vars = 200000

我实际上怀疑最后两个根本不重要,但我被建议也增加它们。

我确信 PHP 确实正确加载了配置值,因为它phpinfo()符合我的预期。我期望能够上传最大 50MB 的文件,但上传 4MB 的文件已经失败。正常的 PHP 每个站点日志中没有记录任何错误。而且我确信有足够的空间来保存上传的文件。

似乎还有其他一些不可见的限制阻止我上传文件。这可能是什么?也许是 Apache 本身?虽然从未听说过这个限制。

我花了将近一周的时间来解决此问题,我和客户都感到很绝望。欢迎提供任何提示。

答案1

首先,这似乎是错误的。假设是打字错误,但无论如何都会指出:

set upload_max_filesize = 5OM

那应该是0正确的吗?

set upload_max_filesize = 50M

memory_limit您的帖子好像也是空的?

无论如何,除了这些设置之外,您还应该进行调整max_execution_timemax_input_time以便上传本身不会超时。取决于速度和连接,但正确掌握上述所有设置应该可以让您上传 50MB 文件而不会出现太多问题。

相关内容