在IIS 7.5上使用FastCGI进行PHP上传会永远停滞/耗时


PHP Uploading with FastCGI on IIS 7.5 stalling/taking forever

好的,首先;这在一台服务器上可以100%正常工作,但在一台非常相似的服务器上却一团糟——这就是为什么我认为它一定是IIS问题——我只是不知道在哪里。

我有一个非常标准的PHP上传脚本,但它不断锁定/冻结,然后在较大的文件(超过250mb)上恢复

没有错误返回,上传确实完成了,对于4gb以下的文件来说效果很好,但这需要很长时间。你可以在上传tmp文件时观察它们的大小,它会停止接收数据——有时一次几分钟,然后从停止的地方重新开始,继续上传。

我在IIS中配置了以下内容:

CGI:

  • 超时:00:30:00
  • 活动超时:300000
  • 空闲超时:300000
  • 请求超时:300000

请求筛选:

  • 允许的最大内容长度:4294967295
  • 最大URL长度:4096
  • 最大查询字符串:2048

PHP:

  • post_max_size:4G
  • upload_max_filesize:4G
  • 最大执行时间:300000
  • 最大文件加载:300000
  • 最大输入时间:-1
  • 内存限制:-1

我之前从脚本中得到的错误花费了太长时间,但是增加"活动"、"空闲"answers"请求"时间已经解决了这个问题。上传确实很好,但需要永远。我在另一个运行相同上传脚本的开发箱上有完全相同的IIS设置,它运行得很完美——所以我不知道我缺少了什么。

PHP为5.4.14。我在PHP错误日志或Windows事件查看器中一无所获(因为据我所知,实际上没有抛出任何错误)

有人知道我可能会错过什么设置吗?

好吧,那太愚蠢了。我只是四处询问,有人确实在路由器级别为出现问题的一台服务器打开了"入侵防护"。禁用它似乎可以解决问题。