J'ai un code CURL qui récupère du contenu XML à partir d'un serveur distant. Je reçois la sortie attendue sur mon localhost (XAMPP sur Windows). Mais à partir du site en direct (hébergé sur Linux), j'obtiens l'erreur CURL: 'Impossible de se connecter à l'hôte'.CURL travaillant à partir localhost mais pas sur le site en direct
function DownloadUrl($Url, $p){
// est installé curl? if (! Function_exists ('curl_init')) { die ('CURL n'est pas installé!'); }
// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, $Url);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $p);
curl_setopt ($ch, CURLOPT_POST, 1);
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// $output contains the output string
$output = curl_exec($ch);
if($output === false)
echo 'Curl error: ' . curl_error($ch);
else
print $output;
// close curl resource to free up system resources
curl_close($ch);
}
Avez-vous essayé d'envoyer une requête ping à votre hôte à partir du serveur Linux? Avez-vous essayé de connecter votre hôte à votre serveur Linux? Si oui, le résultat est-il correct? –
cela devrait être étiqueté PHP aussi. –
Il serait utile de connaître votre environnement distant, par exemple, l'hébergement partagé, VPS, etc. Certains fournisseurs partagés ne vous permettront pas d'extraire du contenu d'autres sites à l'aide de curl. Si vous êtes sur un VPS, vous pouvez vérifier qu'il existe des règles iptables appropriées pour vous permettre également des connexions sortantes. – suitedupgeek