海傢伙, 如何獲得婉使用PHP我的用戶的IP地址....獲取婉使用PHP
獲取婉使用PHP
回答
在典型的LAN設置,在整個局域網通過路由器連接到互聯網,LAN上的每臺計算機將共享一個「外部」WAN IP(分配給路由器),但每臺計算機都有一個「內部」LAN IP(通常爲192.168。。)。
在這種情況下,該LAN上任何計算機的所有外部請求都將顯示爲來自相同的WAN IP。單獨的路由器會知道請求屬於局域網上的哪臺計算機,因此您的PHP無法檢測到局域網IP,但只能訪問WAN IP(通過$ _SERVER ['REMOTE_ADDR']元素)
如果請求是內部的(比如對同一LAN上的HTTP服務器說),$ _SERVER ['REMOTE_ADDR']元素將保留提出請求的計算機的LAN IP。
簡而言之,服務器只知道發送請求的設備的IP,不管該IP是屬於LAN,WAN還是任何其他類型的網絡。
$ _SERVER ['REMOTE_ADDR']會爲您提供HTTP請求的IP地址。如果您指的是「用戶」作爲瀏覽您的網站的人,那麼這很可能是您要查找的內容。
如果你指的是WAN IP的「執行用戶已經可以使用以下行來獲取服務器的WAN IP
$ WANIP =的file_get_contents(「http://www.whatismyip.com/automation/n09230945.asp」);
請記住,這將使一個DNS和一個HTTP連接到whatismyip.com,這將減慢您的網站。
我使用whatismyip.com來得到這個。我不會在生產中使用它,但是我將它用於集成測試(特別是,Paypal IPN不能與本地主機配合使用,並且需要通過WAN IP設置端口轉發)。
(注意它們的使用政策!http://www.whatismyip.com/faq/automation.asp)
function getWANIP() {
$url = "http://automation.whatismyip.com/n09230945.asp";
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0");
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_ENCODING, "UTF-8");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//UNCOMMENT TO DEBUG TO output.tmp
//curl_setopt($ch, CURLOPT_VERBOSE, true); // Display communication with server
//$fp = fopen("output.tmp", "w");
//curl_setopt($ch, CURLOPT_STDERR, $fp); // Display communication with server
$response = curl_exec($ch);
curl_close($ch);
if ($response === FALSE) {
throw new Exception("Error while retrieving server data: " . curl_error($ch));
}
return $response;
}
我發現最好的辦法是採用了最新的WhatIsMyIPAddress API,http://bot.whatismyipaddress.com和使用建議1個查詢每5分鐘Source。它以明文形式返回WAN IP,因此使用
file_get_contents("http://bot.whatismyipaddress.com");
將無需任何後分析即可輕鬆獲得IP。
這將獲得服務器廣域網ip,而不是您的設備/計算機 – JosFabre 2015-10-16 13:58:29
- 1. 使用php獲取標識
- 2. 使用PHP獲取XML值
- 3. 獲取使用php的json
- 4. 使用PHP獲取destiniation URL?
- 5. 獲取預約使用PHP
- 6. 獲取數據使用PHP
- 7. ngImgCrop使用php獲取src
- 8. PHP使用fetch()獲取值
- 9. PHP:獲取使用的getElementById
- 10. 獲取具有使用PHP
- 11. 獲取內存使用PHP
- 12. 獲取使用循環PHP
- 13. 獲取包含使用PHP
- 14. 獲取intval()使用PHP?
- 15. 獲取訪問使用PHP
- 16. 使用PHP從PHP獲取.src,而
- 17. StringUtils.defaultString用於收藏的委婉說法?
- 18. 使用SoapClient從PHP獲取元素使用SoapClient獲取PHP中的元素
- 19. 如何使用PHP獲取整行使用max()使用PHP
- 20. 只使用POST使用PHP獲取最後一行使用PHP
- 21. 使用PHP獲取用戶輸入
- 22. PHP - 使用類獲取用戶信息
- 23. 使用php獲取引用者
- 24. 從谷歌加使用PHP獲取用戶信息使用PHP
- 25. 使用php獲取店名在magento中使用php
- 26. 使用PHP獲取推特熱門主題使用PHP
- 27. 使用PHP獲取使用PHP的推送到我的網站
- 28. 使用php獲取數組值使用php
- 29. 使用PHP獲取json結果的具體數據使用PHP
- 30. 使用php獲取「我的文檔」路徑使用php
由用戶指您的客戶瀏覽您的網站或網站正在執行的用戶。 – 2009-10-28 18:05:37