【问题标题】:How to use proxy by curl_init?curl_init 如何使用代理?
【发布时间】:2017-06-14 03:39:13
【问题描述】:
<?php
$url = 'http://www.php.net/';
$proxy = '104.41.154.213:8118';
//$proxyauth = 'user:password';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
//curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
$data = curl_exec($ch);
curl_close($ch);




if (preg_match('<body class="home ">', $data)) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}
?>

当我停止使用代理但不使用任何代理时,它正在工作。谁能帮我看看问题出在哪里?

【问题讨论】:

  • 您的代理类型是什么?

标签: php curl proxy


【解决方案1】:

你需要为你的 curl 设置proxytype

curl_setopt($ch,CURLOPT_PROXYTYPE,xxxxxxx);

你也可以调试 curl 错误,用

if($data === false)
  echo 'Curl error: ' . curl_error($ch);

【讨论】:

    猜你喜欢
    • 2012-02-14
    • 2014-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-04
    • 2012-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多