php - 套接字 - 超时

标签 php sockets centos

我正在尝试连接到 wsdl 服务,
但收到此错误:

wsdl 错误:获取 http://api.didww.com/api/?wsdl - HTTP 错误: header 的套接字读取超时

本地没有问题,但是在远程服务器上我得到了这个错误。

远程服务器:Linux CentOS (FreePBX)

编码:

$client = new soapclient($site, true);
$err = $client->getError();
if ($err)
{
    echo 'ERROR: ' . $err . '</pre>';
}

$username = 'XXXX';
$_key = 'YYYY';
$auth_string = sha1($username.$_key);

$arr = array();
$arr[0] = $auth_string;
$arr[1] = $country_id;

$result = $client->call('getcities', $arr);

if ($client->fault)
{
    echo '<pre>';
    print_r($result);
    echo '</pre>';
}
else
{
    $err = $client->getError();
    if ($err)
    {
        echo 'Error: <pre>' . $err . '</pre>';
    }
}
echo '<pre>';
print_r($result);
echo '</pre>';

最佳答案

默认套接字超时在 ini 中设置,因此您可以增加它并查看它是否有效

ini_set('default_socket_timeout', 160);

或者您可以将它作为构造函数参数(选项)传递给soapclient
$client = new SoapClient($wsdl, array("connection_timeout"=>15));

关于php - 套接字 - 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3433599/

相关文章:

PHPMailer SMTP 连接错误

ios - 如何在 iOS 中快速使用 UDP 套接字?

mysql - Drupal 缓存不工作(表为空)

ubuntu - 如何检查 Linux 内核上的默认 kvm mmu?

python - 通过参数传递给脚本通过 UDP 或 TCP 套接字发送十六进制值

Nginx 子目录 404

php - WooCommerce Bookings - 在自定义日期格式上用 PHP 比较两个时间戳

php - 我如何使用 php 从 html View 源中获取 "rel"属性的值?

php - Laravel Advanced Wheres 如何将变量传递给函数?

python - 如何修复我的asyncio服务器,使其不返回[Win 10022]?