【问题标题】:PHP's file_get_contents not returning until remote servers' keep-alive limit is exceededPHP file_get_contents 在超过远程服务器的保持活动限制之前不会返回
【发布时间】:2008-10-09 09:23:28
【问题描述】:

从一个 apache 服务器 file_get_contents 立即返回一个 url 的内容。在另一个 apache 服务器上,file_get 内容不会返回相同 url 的内容,直到托管该 url 的服务器的保持活动限制已过期。 2 个 php 服务器正在检索相同的 url,但通过不同的网络路由。什么可能导致一个 php 安装在返回之前等待远程保持活动限制?

【问题讨论】:

  • 你比较过php.ini的吗?

标签: php html apache networking


【解决方案1】:

手动使用fopen 会更快吗?

与其花几个小时找出为什么 file_get_contents 不起作用,不如换掉它。

如果fopen 没有更快,则可能是配置或文件系统问题。如果速度更快,则可能是 php.ini 问题。

【讨论】:

    【解决方案2】:

    我并不完全熟悉那个 php 函数,但是我看到了由于输出没有被刷新回流而导致的类似情况。我相信一旦数据达到一定大小或当流关闭时,数据通常会被刷新到流中。在您使用的每个 php 服务器上,此大小的配置可能不同,从而导致不同的效果。在调用 file_get_contents 之后直接调用 flush() 可能是值得的。希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2013-04-10
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 1970-01-01
      • 2020-04-09
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      相关资源
      最近更新 更多