2

使った

if(!empty($_SERVER['HTTP_CLIENT_IP']))
{
        //check ip from share internet
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    }
else if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
        //to check ip is pass from proxy
        $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    }
else{
        $ip = $_SERVER['REMOTE_ADDR'];
    }

echo  $ip;

クライアントのIPアドレスを取得する

ローカルサーバーでテストすると機能しますが、Webをホストしているリモートサーバーにファイルをアップロードすると、クライアントIPではなくサーバーIPアドレスが取得されます

4

1 に答える 1

1

サーバーが内部プロキシまたはロード バランサーの背後にある可能性があります。このためのコードを含むPHP Utilities Functionsライブラリを使用してみてください。

于 2013-11-11T07:02:16.163 に答える