【问题标题】:PHP code returns bool(false)PHP 代码返回 bool(false)
【发布时间】:2015-12-21 19:28:33
【问题描述】:

我有以下 PHP 代码:

<?php

$ch = curl_init();

$url = "http://api/url/mac_address";

curl_setopt($ch, CURLOPT_URL,$url);

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, "msg=TEST");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$output = curl_exec ($ch);

curl_close ($ch);

var_dump($output);

?>

它在一台服务器上正常工作,但是当我在另一台服务器上运行它时,它返回 bool(false)。

【问题讨论】:

  • api/url/11:22:AA:44:55:22"; curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, "msg=TEST"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $output = curl_exec ($ch); curl_close ($ch); var_dump($输出); ?>
  • 一台服务器可以到达url地址,另一台不能。就这么简单。
  • 尝试添加错误输出: if( $output === false) var_dump( curl_error($ch) );
  • 一个使用代理,另一个不使用?
  • 两台服务器都能ping通API的IP吗?

标签: php api curl


【解决方案1】:

使用下面的代码进行调试:

if(curl_exec($ch) === false)
{
    echo 'Curl error: ' . curl_error($ch);
}
else
{
    echo 'Operation completed without any errors';
}

来源:http://php.net/manual/en/function.curl-error.php

【讨论】:

  • 这对我有帮助。域解析存在问题,考虑到我的 2 台服务器位于不同的位置,这就是为什么代码在一台服务器上运行而在另一台服务器上没有运行的原因。 Tnx
猜你喜欢
  • 2011-12-03
  • 1970-01-01
  • 1970-01-01
  • 2019-08-06
  • 1970-01-01
  • 1970-01-01
  • 2012-08-24
  • 1970-01-01
  • 2017-06-25
相关资源
最近更新 更多