PHP CURL ne retourne rien
function ParseUrl($URL)
{
$crl = curl_init();
curl_setopt ($crl, CURLOPT_URL, $URL);
curl_setopt ($crl, CURLOPT_PORT, 8086);
curl_setopt ($crl, CURLOPT_USERPWD, "admin:pass");
curl_setopt ($crl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($crl, CURLOPT_CONNECTTIMEOUT, 5);
$ret = curl_exec($crl);
curl_close($crl);
return $ret;
}
echo ParseUrl('http://xxx.me/serverinfo');
Le code ci-dessus ne retourne rien. La page que je suis en train de faire avec curl utilise l'authentification http de la chose.
Ai-je raté quelque chose de simple ou quoi?
- Si vous avez des caractères spéciaux dans le nom d'utilisateur et le mot de passe (par exemple, un
@
symbole si votre nom d'utilisateur, une adresse email), assurez-vous qu'ils sont échappés. - Non, le nom d'utilisateur est tout simplement "admin" et le mot de passe est simple ainsi.
Vous devez vous connecter pour publier un commentaire.
Commencer par faire cela et voir ce que vous obtenez, et après cela, il serait assez évident que le problème est le suivant:
Vérifier s'il y avait une erreur avec la demande après curl_exec:
Qui va vous fournir assez d'informations pour savoir si il y avait une erreur avec la demande. Si il n'y a pas d'erreur, vous pouvez vérifier la demande envoyée après curl_exec de sorte que vous pouvez vérifier que tout envoyé est en place:
Edit: d'Après les commentaires c'est ce que vous êtes à la recherche pour ce qui est manquant:
Vous devez définir l'option
CURLOPT_HTTPAUTH
.Citation de php.net sur le sujet: