2015-03-02 25 views
2

PHP插槽我想通過代理服務器使用PHP的插座。我使用的插座下面的代碼創建與代理

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); 
    $result = socket_connect($socket, some_ip, 443); 

,並通過設置代理:

$aContext = array(
    'http' => array(
     'proxy' => 'tcp://191.96.x.xx:1212', 
    ), 
); 
stream_context_set_default($aContext); 

但是,當我使用路由跟蹤測試它,它不通過代理去。 路由跟蹤 - https://www.adayinthelifeof.nl/2010/07/30/creating-a-traceroute-program-in-php/

而且我嘗試使用環境變量http_proxy=http://proxy.example.com:8080但ID不會通過代理去

+0

無法找到任何東西太多就可以了 – 2015-03-03 06:28:47

回答

1

stream_context_set_default設置了文件操作(如fopenfile_get_contents)默認情況下,但你」重新嘗試做插座與socket_create操作,等等 - 這兩者是完全不同的。

如果你只是想通過代理服務器使用類似$data = file_get_contents("http://example.com/file");你已經設置爲使用代理默認上下文後通過HTTP下載文件。

如果您需要使用原始套接字,您可以使用socket_create等,但您需要提供更多關於您正在使用的代理類型以及您想要使用套接字實現的內容的詳細信息。