SMS API URL未响应
问题描述:
我正在Web应用程序中实施SMS网关API。使用这个下面的PHP代码:SMS API URL未响应
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'apiurl');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
但问题是,当我从直播服务器调用它,它没有响应。但它工作正常,并在本地服务器上以xml格式提供响应。
答
确保你安装PHP卷曲在现场服务器
对于Ubuntu的:命令和apt-get安装PHP5卷曲
<?php
// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, "example.com");
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// $output contains the output string
$output = curl_exec($ch);
// close curl resource to free up system resources
curl_close($ch);
?>
+0
我使用phpinfo()进行了检查。它是卷曲启用。 –
答
我的问题得到解决。我的下面的代码是正确的,但我的虚拟主机服务器阻止了 API端口。我告诉我的托管服务提供商解除阻止IP和端口,他们这样做,现在它正在工作。
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'apiurl');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
?>
检查您的防火墙设置。生产服务器可能有过滤...检查你的SMS提供商,他们的API也可能有IP过滤。在您的生产服务器上,尝试在不使用PHP的情况下调用URL。在WAMP env上使用IE或Lynx,如果你在LAMP环境中。 –
是'apiurl'正在使用的实际URL还是代码的占位符? – GordonM
同时检查CURL PHP扩展是否启用。同时检查'curl_error($ ch)' –