【问题标题】:Php Curl Connectin timed outPHP 卷曲连接超时
【发布时间】:2015-02-23 08:34:34
【问题描述】:

我有 worpdress 插件,它通过 curl 与我的生产站点 https://mysite.com 进行通信。 这是卷曲代码:

   $vars = json_encoded(
                array(
                   //some params
                  );
   );

    $headers = array(
        'Accept: application/json',
        'Content-Type: application/json',
    );

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://mysite.com/myapi");
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $vars);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    $result = curl_exec($ch);

    var_dump(curl_error($ch);

它适用于所有使用我的插件的 wp 网站,但突然它只对一个网站停止工作: curl_error() 返回:

Failed to connect to mysite.com port 443: Connection timed out

此外,我的插件不在 wordpress 存储库中,它位于 https://mysite.com/plugin 上,我的插件使用钩子“site_transient_update_plugins”来检查可用更新。这也不再起作用,他们不再收到有关可用更新的消息。

所以我猜他们在他们的服务器上改变了一些导致这个问题的东西,我只是找不到可能导致这个问题的原因。

我也不是 100% 确定,但连接需要大约 300 秒才能引发此错误。 CURLOPT_CONNECTTIMEOUT 的默认值为 300 秒。

因此,任何可能导致这种行为的建议都会有所帮助。

【问题讨论】:

  • 我要问:您确定与服务器的连接正常吗?例如,您是否尝试过 telnet 到 443 端口并查看它是否存在?
  • 是的,我 100% 确定与服务器的连接正常。正如我所说,它适用于所有其他站点,它适用于少数几个不同服务器上的几个 wp 站点。只是它停止为该站点工作。所以我不知道是什么导致了这个,php.ini 中的一些设置或其他东西。我正在尝试复制它,但我不能。
  • 错误消息看起来确实是连接问题,而不是应用层,这就是我问的原因。通常,即使应用程序出现问题,您也会收到响应。我会检查服务器上的日志,如果你没有发现任何有用的东西,我会做一个 tcpdump 来查看服务器是否正确接收到数据包。

标签: php wordpress curl


【解决方案1】:

尝试远程登录您的站点以确保端口 443 开放且可访问

telnet mysite.com 443

如果您收到响应,则表示您的防火墙和 Apache /web 服务器没有问题。

这不仅是防火墙的问题,您还应该检查您的网络服务器是否打开了 443 端口

【讨论】:

    【解决方案2】:

    您能否检查该站点上的防火墙。我确信该站点上的防火墙阻止了到您的生产服务器 IP 地址的流量。

    【讨论】:

    • 同时检查 DNS 解析。更好的是,尝试从不工作的机器上 ping mysite.com。另外wget https://mysite.com:8080(来自不工作的机器)会给你详细的错误信息
    • 是的,问题出在防火墙上。他们将防火墙设置为将所有流量丢弃到我的服务器。现在已经修好了。谢谢
    猜你喜欢
    • 1970-01-01
    • 2017-06-04
    • 2011-09-16
    • 2019-08-16
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 2012-02-28
    • 1970-01-01
    相关资源
    最近更新 更多