Windows 服务器上的 PHP 上传系统清单

Windows 服务器上的 PHP 上传系统清单

我有一个 php 上传系统,我想让它上传大文件,有些文件可能高达 200mb。这意味着上传这些文件不仅会占用大量带宽、服务器内存空间,还会花费大量时间。

现在我的系统可以正常工作了,但是尝试上传大型文件时似乎会失败。我已经用一个 22mb 的文件测试过它,它运行良好,但是当我将它上传到一个大约 89.4mb 的文件时,它失败了,它完成了整个上传过程,但是当它尝试发布文件时,它给了我一个错误。

不,我已经更改了 php.ini 文件中的许多设置:

  • upload_max_filesize
  • 帖子最大大小
  • 最大输入时间
  • 最大执行时间
  • 内存限制

然后我意识到我的 IIS 服务器设置了执行时间限制,大约为 2 分钟,所以我将其设置为大约 30 分钟(请注意,在测试中,我上传 80.4mb 的文件大约需要 23 分钟左右)。我收到的错误是“404 - 未找到文件或目录”。这很奇怪,因为对于较小的文件不会这样做。

我唯一能想到的是,我的 Windows Server 中的某个地方有一个设置,阻止我的系统将这么大的文件从临时文件移动到正确的目录......或者也许临时文件无法处理这样的文件大小?

所以,我想知道是否有人可以写一份需要更新的设置清单,以便上传这样的大文件,因为我快到了,只是有些东西阻止了我。

提前致谢。

答案1

我认为你需要看看httpRuntime属性调用maxRequestLength。此值默认为 4096 KB (4MB)

如果你安装了请求过滤功能,你可能还需要查看requestLimits属性调用maxAllowedContentLength。此值默认为 30.000.000KB,因此如果您需要上传大于 28MB 的文件,您也必须增加此值

相关内容