Steckdosen - time-out
ich versuche zu verbinden mit einer wsdl-service ,
aber immer diese Fehlermeldung:
wsdl-Fehler: Erste http://api.didww.com/api/?wsdl - HTTP-FEHLER: socket Lesen der Header-Timeout
lokal ist es kein problem, aber auf dem remote-server bekomme ich diese Fehlermeldung.
remote-server: Linux CentOS (FreePBX)
code:
$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>';
- Sind Sie sicher, dass Ihre firewall nicht verwandt? Haben Sie versucht, die Verbindung zum Ziel-server in einer anderen Art und Weise?
- Ich Herunterfahren der firewall, noch gleiche problem.
- was ist deine Einstellung timeout für "default_socket_timeout"?
- wie kann ich es überprüfen?
- Können Sie abrufen von Daten von einem beliebigen http-Quelle auf diesem server, wie z.B.
<?php $c = file_get_contents('http://stackoverflow.com');
? - überprüfen php.ini oder verwenden Sie $setting = ini_get('default_socket_timeout'); Sie können auch versuchen, conn timeout bzw timeout mit soapclient Parameter
- der Standardwert ist 60.
- VolkerK - ja, ich kann
- Und funktioniert es auch mit
<?php $c=file_get_contents('http://api.didww.com'); echo gettype($c);
? (Bekomme ich ein "403 forbidden", aber es ist zumindest etwas anderes als "time-out"...) - hier gilt das gleiche, 403 err
- "new soapclient()" - nach der Fehlermeldung dieser Klasse nicht vorgesehen ist, mit der PHP-soap-Erweiterung, aber von nuSOAP wie in sourceforge.net/projects/nusoap , richtig?
- ja, das stimmt, seine nusoap
Du musst angemeldet sein, um einen Kommentar abzugeben.
Standard-socket-timeout ist gesetzt in der ini so können Sie einfach erhöhen und sehen, ob es dann funktioniert
Oder Sie können übergeben Sie es als parameter des Konstruktors (option) zu soapclient