Maison > développement back-end > tutoriel php > Pourquoi ma demande CURL via un proxy échoue-t-elle et comment puis-je y remédier ?

Pourquoi ma demande CURL via un proxy échoue-t-elle et comment puis-je y remédier ?

Susan Sarandon
Libérer: 2024-11-14 09:49:01
original
350 Les gens l'ont consulté

Why Is My CURL Request Through a Proxy Failing, and How Can I Fix It?

Comment utiliser CURL via un proxy : un guide de dépannage

L'utilisation d'un serveur proxy peut améliorer les fonctionnalités de curl, mais une configuration incorrecte peut entraîner erreurs. Voici une analyse approfondie de votre code et une solution aux problèmes que vous avez rencontrés :

Problème 1 : Variable manquante

Dans l'extrait de code initial, la ligne 12 a été tentée pour utiliser $url sans l'initialiser :

$url = '$_POST[1]';
Copier après la connexion

Solution :

Initialisez $url avec la valeur appropriée du formulaire HTML.

Problème 2 : Écran vide

Le code mis à jour ne renvoie désormais qu'un écran vide. Cela est probablement dû au fait que $curl_scraped_page ne fait pas écho à la sortie :

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
Copier après la connexion

Solution :

Définissez CURLOPT_RETURNTRANSFER sur 1 pour activer la sortie vers $curl_scraped_page.

Code de travail final :

$url = 'http://dynupdate.no-ip.com/ip.php';
$proxy = '66.96.200.39:80';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);

echo $curl_scraped_page;
Copier après la connexion

Remarques supplémentaires :

  • CURLOPT_PROXYUSERPWD peut être utilisé pour fournir un nom d'utilisateur et un mot de passe pour authentification proxy.
  • CURLOPT_HEADER peut être commenté si les en-têtes ne sont pas souhaités dans la sortie.
  • Le réglage de CURLOPT_PROXY sur null désactive le proxy pour des requêtes spécifiques.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal