PHP CURL对于localhost来说太慢了

时间:2013-10-11 08:23:33

标签: php curl

我在WAMP环境中设置了两个应用程序。两个站点的性能都可以。他们在不到一秒的时间内返回数​​据。问题是,当我将一个网站从另一个网站卷起时,卷曲需要大约20秒才能响应。我做过剖析。实际上CURL请求一直在用。

这不应该是这种情况,因为我的计算机上都设置了两个站点,并且我使用localhost / 127.0.0.1进行访问。是某种DNS解决问题吗?

4 个答案:

答案 0 :(得分:24)

我遇到了同样的问题,最后发现它来自两个事实:

  1. 我使用Mac OS X Mavericks
  2. 我通过网址http://myproject.local/访问了我的项目,因为我在127.0.0.1 myproject.local
  3. 中添加了一行/etc/hosts

    这是因为.local tld是为Bonjour服务保留的,这是自Mac OS X Lion(10.7)以来的。

    更改tld以解决其他问题。

答案 1 :(得分:1)

是的,是DNS查找问题。

在Windows 7 x64上我设法克服了这个问题

(localhost中不同端口上的应用程序之间的卷曲调用) 通过编辑主机文件 (C:\ Windows \ System32 \ drivers \ etc)。

对该行说不评论:     127.0.0.1 localhost , 重启 ,您已完成。

答案 2 :(得分:1)

我通过设置不同的虚拟主机(例如sitea.dev和siteb.dev)解决了这个问题。如果您在localhost Windows机器上为这两个站点使用相同的主机,那么您会得到很长的延迟(就像有一个致命的PHP错误)。这不是Curl的问题,因为file_get_contents(url)给了我同样的问题。

答案 3 :(得分:1)

如果您使用* .local TLD,则可以通过在主机文件中添加IPv4和IPv6条目来解决此问题并享受快速加载的时间

23:48:28-05:00 
23:40:59-05:00
23:48:28-05:00

etc

最佳