【问题标题】:How to use proxy in php curl如何在 php curl 中使用代理
【发布时间】:2017-01-28 10:08:37
【问题描述】:

我有一个 curl 函数:

function curl($url, $referer, $type=null){
    $agent = ($type != null && $type = 'movil') ? 'Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30' : 'Mozilla/5.0(Windows;U;WindowsNT5.0;en-US;rv:1.4)Gecko/20030624Netscape/7.1(ax)';
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_REFERER, $referer);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $page = curl_exec($ch);
    curl_close($ch);
    return $page;
}

但是这个功能会根据请求显示我的服务器 ip,所以如果知道通过代理 ip 和端口使用它的任何方法,那就太好了。谢谢

【问题讨论】:

标签: php curl proxy


【解决方案1】:

如果目的是隐藏源 IP(请求发起服务器的 IP),那么使用 curl 是不可能的,因为它是一个需要操作原始套接字连接的低级操作。

如果您希望在向某个 URL 发出请求时使用代理, 那么你必须使用“CURLOPT_PROXY”。

function curl($url, $referer, $type=null){
    $agent = ($type != null && $type = 'movil') ? 'Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30' : 'Mozilla/5.0(Windows;U;WindowsNT5.0;en-US;rv:1.4)Gecko/20030624Netscape/7.1(ax)';
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_PROXY, '8.8.8.8'); // replace 
8.8.8.8' with proxy server's IP.
    curl_setopt($ch, CURLOPT_PROXYPORT, '2211'); // replace '2211' with Proxy server's port.
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_REFERER, $referer);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $page = curl_exec($ch);
    curl_close($ch);
    return $page;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-05
    • 1970-01-01
    • 2015-12-15
    • 2016-03-08
    • 1970-01-01
    • 2015-07-22
    • 1970-01-01
    相关资源
    最近更新 更多