[英]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.