好的,首先;这在设置的一台服务器上可以 100% 正常工作,但在一个非常相似的服务器上却搞砸了——这就是为什么我认为它必须是某个地方的 IIS 问题——我只是不知道在哪里。
我有一个非常标准的 PHP 上传脚本,但它会一直锁定/冻结,然后在更大的文件(超过 250mb)上恢复。
没有错误返回,并且上传完成并且对于高达 4gb 的文件可以正常工作 - 但它需要永远。您可以在上传时查看 tmp 文件的大小,它会停止接收数据 - 有时一次持续几分钟,然后从停止的地方恢复并继续上传。
我在 IIS 中配置了以下内容:
电脑动画:
- 超时:00:30:00
- 活动超时:300000
- 空闲超时:300000
- 请求超时:300000
请求过滤:
- 最大允许内容长度:4294967295
- 最大 URL 长度:4096
- 最大查询字符串:2048
PHP:
- post_max_size: 4G
- 上传最大文件大小:4G
- 最大执行时间:300000
- 最大文件上传:300000
- 最大输入时间:-1
- 内存限制:-1
我以前从脚本中收到错误,花费的时间太长,但是增加活动、空闲和请求时间已经解决了这个问题。上传工作正常,但需要永远。我在另一个运行相同上传脚本的开发盒上具有完全相同的 IIS 设置,并且它运行完美 - 所以我不知道我错过了什么。
PHP 是 5.4.14。我在 PHP 错误日志或 Windows 事件查看器中一无所获(因为据我所知,实际上没有抛出任何错误。)
任何人都知道我可能在某处缺少哪些设置?