无法访问.Onion网站与CURL

时间:2018-04-04 12:13:09

标签: php curl tor php-curl

我使用连接到Tor代理端口的类我可以访问http://check.torproject.org并说我使用Tor浏览器,但是当我试图访问.onion时网站我得到空白页。

我使用了这个class

1 个答案:

答案 0 :(得分:1)

它无法加载.onion地址,因为它使用curl代理类型CURLPROXY_SOCKS5而不是CURLPROXY_SOCKS5_HOSTNAME,它将使用Tor SOCKS代理来解析DNS地址。

您需要更改:

curl_setopt( $this->ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5 );

到:

curl_setopt( $this->ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5_HOSTNAME );

除此之外,示例类并没有让您能够自定义您的请求。

我编写了一个名为TorCurlWrapper的Tor cURL包装类(例如herehere),它是一个名为TorUtils的较大Tor PHP库的一部分。它将curl包装在一组易于使用的函数中,并确保只能通过Tor进行请求,并确保正确设置代理类型,如果不支持则会失败(真正的旧卷曲版本)。

您可以单独下载或通过运行composer require dapphp/torutils使用Composer进行安装。