Php 云flare访问者IP

Php 云flare访问者IP,php,jquery,cloudflare,Php,Jquery,Cloudflare,当我在php中回显时,我试图为访问者获得真正的IP,这让我获得了真正的IP echo $_SERVER['REMOTE_ADDRESS']; 但当我尝试在jQuery中执行此操作时: $.getJSON("http://jsonip.appspot.com?callback=?", function(data){ alert( "Your ip: " + data.ip); }); </script> $.getJSON(“http://jsonip.appspot.com

当我在php中回显时,我试图为访问者获得真正的IP,这让我获得了真正的IP

echo $_SERVER['REMOTE_ADDRESS'];
但当我尝试在jQuery中执行此操作时:

$.getJSON("http://jsonip.appspot.com?callback=?",
function(data){
   alert( "Your ip: " + data.ip);
});
</script>
$.getJSON(“http://jsonip.appspot.com?callback=?",
功能(数据){
警报(“您的ip:+data.ip”);
});

返回CloudFlare IP时,我在apache中启用了
mod_CloudFlare
,在服务器上创建一个PHP文件,以JSON格式导出IP:

<?= json_encode (array ('ip' => $_SERVER['REMOTE_ADDRESS'])); ?>

我从未使用过
mod\u cloudflare
,但我知道它们只是
$\u服务器['HTTP\u CF\u CONNECTING\u IP'中的原始访问者的IP
。为什么
http://jsonip.appspot.com
是否与服务器上安装的CloudFlare有关?@RocketHazmat与CloudFlare无关,但它是通过JQuery获取我的IP的一种方法。@RocketHazmat如何将$\u服务器['HTTP\u CF\u CONNECTING\u IP']与JQuery IP链接?或者更具体地说,问题是您的JSONP调用正在以
http://www.altibbi.com/cdn-cgi/pe/bag2?r[]=http%3A%2F%2Fjsonip.appspot.com%2F%3Fcallback%3djquery1720324627936556935\u 1396882311139%26\u%3D1396882313159
。它正在通过您的服务器进行代理。这就是为什么IP是服务器的(CloudFlare的)。
cdn cgi
文件夹是由CloudFlare创建的,这是Rocket Loader的工作方式()。如何将此文件附加到CloudFlare?我不太明白“附加到CloudFlare”是什么意思。如果您有mod_cloudflare,则无需做任何特殊的事情。只需将PHP文件上传到您的Web服务器,并使用$.getJSON从JavaScript调用它。
$.getJSON("/json-ip-file.php",...