2016-03-27 5 views
0

問題が残っていますヨーロッパやアメリカからしか閲覧できないようなジオロケーションの制限があるURLがあります。私の所在地はアジアです。私は、URLからすべてのhrefを抽出したい。PHPでデータを削ったときにユーザーのIPアドレスでリクエストを送信

しかし、私はカールを使用していますが、問題はサーバーのIPアドレスを送信することであり、ユーザーIPアドレスを入力してユーザーがどのリンクを訪問したかをトラッキングするように要求します。あなたが私のユーザのIPアドレスでリクエストを送信する方法を私を導くことができ、カールを使用せずに私は感謝します。

次はソースコードです。私はaccesing午前URLは次のとおりです。

HTTP : //partnerads.ysm.yahoo.com/ypa/?ct=2 & C = 000000809 & U =のhttp%3A%2F%2Ftrouve.autocult.fr %2F_test.php%3Fq%3Dtarif%2520skoda%2520superb%2520combi & R = & W = 1つの&テレビ= & TT = & LO = & TY = & TS = 1458721731523 & AO = & H = 1 & CONO = 3292b85181511c0a &のdT = 1 &er = 0 & si = p-Autocult_FRA_SERP_2%3A600x796

<?php 
include_once 'simple_html_dom.php'; 
$html = file_get_html('iframe.html'); 

// find iframe from within html doc 
foreach($html->find('iframe') as $iframe) 
{ 
    $src = $iframe->getAttribute('src');  // src extracted 
    $ch = curl_init(); // Initialise a cURL handle 

    // Set any other cURL options that are required 
    curl_setopt($ch, CURLOPT_HEADER, TRUE); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE); 
    curl_setopt($ch, CURLOPT_COOKIESESSION, TRUE); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
    curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36'); 
    curl_setopt($ch, CURLOPT_URL,$src); 

    $results = curl_exec($ch); // Execute a cURL request 
    //echo curl_error($ch); 
    curl_close($ch); // Closing the curl 

    $bool = TRUE; $match = array(); $int = 0; 
    while(preg_match('/<a[^>]+href=([\'"])(.+?)\1[^>]*>/i', $results, $matches)) 
    { 
    if($bool) 
    { 
     // print captured group that's actually the url your searching for 
     echo $matches[2].'<br>'.'<br>'.'<br>'.'<br>'; 
     $bool = false; 
    } 
    } 
} 
+0

また、[この同様の質問を参照](http://stackoverflow.com/questions/1301319/curl-ip-address)。あなたは[ip spoofing](https://en.wikipedia.org/wiki/IP_address_spoofing)を探しているようです。 –

答えて

1

プロキシを使用できます。カールのない

$ip = '100.100.100.100:234' //example $ip 
curl_setopt($ch, CURLOPT_PROXY,$ip); 

:あなたは、プロキシのためのlookin'場合

$aContext = array(
    'http' => array(
     'proxy' => 'tcp://'.$ip, 
     'request_fulluri' => true, 
    ), 
); 
$cxContext = stream_context_create($aContext); 

$sFile = file_get_contents("http://www.google.com", False, $cxContext); 

、こすりするためにいくつかの住所が簡単あります:

'http://proxylist.hidemyass.com/', 
'http://ipaddress.com/proxy-list/', 
'http://nntime.com/proxy-ip-'.$i.'.htm', 
'http://www.proxylisty.com/ip-proxylist-'.$i 

2000以上のIPS

+0

しかし、curlを使用するとサーバーのIPアドレスを送信するので、このページが要求されたユーザーのようなサーバーに要求が送信されると、ユーザーのIPアドレスが必要になります – Mustufain

関連する問題