如何从php curl访问洋葱网站?

时间:2013-08-25 16:42:41

标签: php curl tor

我使用此代码:

$this->curl = curl_init();
        curl_setopt($this->curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
        curl_setopt($this->curl, CURLOPT_TIMEOUT, 60);
        curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($this->curl, CURLOPT_PROXY, '127.0.0.1:9050');
        curl_setopt($this->curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
        curl_setopt($this->curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($this->curl, CURLOPT_URL, "http://some-onion-site.onion");
    $contents = curl_exec($this->curl);

它不会立即返回任何内容。 Tor正常工作,可以从tor浏览器访问站点。 编辑:我发现它无法解析主机(“无法解析主机名”错误)。

1 个答案:

答案 0 :(得分:1)

好吧,我发现我需要将代理类型设置为CURLPROXY_SOCKS5_HOSTNAME:

curl_setopt($ch, CURLOPT_PROXYTYPE, 7);

工作正常。