2013-01-23 28 views
1

如果我的服務器使用Cloudflare,如何獲得使用代理的訪問者的真實IP?在代理behine Cloudflare後面獲得真實IP?

到目前爲止,這個工程如果遊客打開我的服務器(這是使用CloudFlare的)不使用代理

isset($_SERVER["HTTP_CF_CONNECTING_IP"]) ? $_SERVER["HTTP_CF_CONNECTING_IP"] : $_SERVER["REMOTE_ADDR"]; 
+0

據我所知,你不能。 PHP只能讀取瀏覽器聲稱的IP地址。 – BenM

+1

它不關係你使用的CloudX,如果客戶端的代理不透明,你不能得到他的真實IP地址,否則你可以使用[this](http://stackoverflow.com/questions/6285775/php -get-the-public-ip) –

+0

http://stackoverflow.com/a/40377635/3599237 – Akam

回答

5

你檢查HTTP_X_FORWARDED_FOR?

你可以在這裏看到它的行動:http://canhazip.com/more.php這是通過CloudFlare。如果您想使用代理進行測試,也可以使用該頁面。

p.s.免責聲明:我在CloudFlare工作。

相關問題