【问题标题】:cURL can't connect in a free host but works fine in my localhostcURL 无法在免费主机中连接,但在我的本地主机中工作正常
【发布时间】:2013-05-20 17:11:15
【问题描述】:

我创建了一个小型 Web 应用程序,其功能是能够通过连接 OAuth 使用 Twitter 帐户登录。它像魅力一样工作了几个月,但现在它停止了工作。这是“使用 twitter 登录”算法的快速总结概述。

第 2 步中生成的 URL 很好,因为我尝试在 Google Chrome 中手动复制它,它显示了一个漂亮的访问令牌,所以问题不存在(我认为)。 在第 3 步中,我有一个非常小的方法,它应该做一些非常基本的事情:连接到之前生成的 URL,检索内容并返回它。

在我使用 EasyPHP 12.1 的本地主机中,它像往常一样完美地工作,但在我使用的免费主机 (000webhost) 中它不再工作了。尝试连接时,它只是超时。 HTTPCodeError 为 0,CurlError 为“无法连接到主机”。

这是用于连接到 URL 的方法。

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);    

$http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$response = curl_exec($ch);

curl_close($ch);
return $response;

这是与该方法一起使用的 URL 示例: https://api.twitter.com/oauth/request_token?oauth_consumer_key=DLZZTIxpY19FnWJNtqw5A&oauth_nonce=1369452195&oauth_signature=DIetumiKqJu66XXVvDDHdepnP9M%3D&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1369452195&oauth_version=1.0

我整天都在尝试修复它,但现在我什至不知道该尝试什么。我的本地主机和 000webhost 中的文件完全相同。 如果你能启发我,我会很高兴。如果需要,我会脱下裤子寻求答案。非常感谢。

【问题讨论】:

    标签: php curl twitter oauth


    【解决方案1】:

    Twitter 可能已将您的免费主机的服务器或 IP 地址列入黑名单(阻止)。如果服务器上的其他用户滥用 API,就会发生这种情况。

    【讨论】:

    • 听起来你是对的......好吧,我会尝试联系 Twitter 支持团队,看看他们是否可以修复它。谢谢!
    • @user2376733 你曾经解决过这个问题吗?我也遇到了同样的问题。
    • 这里也一样。这个问题解决了吗?
    【解决方案2】:

    我唯一能想到的是你的free web hosting service 阻止了它。只要一切都非常简单,您就知道这些服务是完美的。当事情变得复杂时,您会遇到提供商实施的限制。这些服务中的大多数都会限制带宽、磁盘空间、服务器使用、支持、上传等等。

    【讨论】:

      猜你喜欢
      • 2017-04-15
      • 2020-05-24
      • 1970-01-01
      • 2019-05-07
      • 2020-05-17
      • 2017-06-30
      • 1970-01-01
      • 2019-04-25
      • 1970-01-01
      相关资源
      最近更新 更多