【问题标题】:PHP CURL is too slow for localhostPHP CURL 对于本地主机来说太慢了
【发布时间】:2013-10-19 06:18:12
【问题描述】:

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

这不应该是这种情况,因为这两个站点都是在我的机器上设置的,并且我正在使用 localhost/127.0.0.1 访问。是某种 DNS 解析问题吗?

【问题讨论】:

标签: php curl


【解决方案1】:

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

127.0.0.1   test.local
::1         test.local

最好的

【讨论】:

  • 为什么评论“将 TLD 更改为其他内容”会比这个简单、优雅、快速的答案更高。添加另一行,不要更改您的 TLD,一切都很快。谢谢里希特
【解决方案2】:

我通过设置不同的虚拟主机(例如 sitea.dev 和 siteb.dev)解决了这个问题一个致命的 PHP 错误)。这不是 Curl 的问题,因为 file_get_contents(url) 给了我同样的问题。

【讨论】:

    【解决方案3】:

    是的,是 DNS 查找问题。

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

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

    取消注释以下内容的行: 127.0.0.1 本地主机 , 重新启动然后你就完成了。

    【讨论】:

    • 我发现你不需要重启,hosts文件的改动就可以生效。
    • 实际上对我来说只有在重新启动后才能工作!我也试过没有重新启动,但它没有用。
    • 我明白了,所以至少在您第一次编辑 hosts 文件时,您应该重新启动。
    【解决方案4】:

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

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

    这是因为 .local tld 是为 Bonjour 服务保留的,这是从 Mac OS X Lion (10.7) 开始的。

    将 tld 更改为其他内容可以解决问题。

    【讨论】:

    • 加一个,也解决了我的问题。谢谢
    • 你是救命稻草。
    猜你喜欢
    • 2016-05-15
    • 2021-12-26
    • 2020-08-08
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多