簡體   English   中英

php cURL:我想發送用戶IP地址就像數據一樣將其保存在其他服務器上

[英]php cURL: i want to send user ip address like a data to save it in an other server

我想發送一些數據,包括訪問者IP地址到其他服務器,它將保存在一個txt文件,它完美地執行用戶的IP地址,我總是發現保存的seconde服務器的IP不是用戶IP地址。 所以在frist服務器中我使用了這段代碼:

$ip = getenv("REMOTE_ADDR");
    $arra['ip'] = $ip;
    $ch = curl_init("http://site1.com/script1.php");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, TRUE);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $arra);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Forwarded-For: $ip"));
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $c = curl_exec($ch);
    curl_close($ch);
    return $c;

在seconde服務器(script1.php)我用這個代碼:

$ip = getenv("REMOTE_ADDR");
$u = "http://www.geoiptool.com/?IP='$ip'";
$file = fopen("./visitors.txt","+a");
fwrite($file,$message);
fclose($file);

PS:我之前已經這樣做了,我不知道這次出現了什么問題。 謝謝

如果您從第一台服務器向第二台服務器發送請求,並在X-Forwarded-For捕獲IP。

您應該在script1.php提取X-Forwarded-For標頭

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM