0

これは機能していません。エラーも発生しません

if($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
  //My code
}
//NOTE: echo $_SERVER['REMOTE_ADDR'] is "::1"
4

4 に答える 4

1

::1 を取得した理由は、ipv6 を使用しているためです。オフにするか、ステートメントに 127.0.0.1 と ::1 の両方を含めます。

于 2013-04-26T07:45:51.793 に答える
1
if($_SERVER['REMOTE_ADDR'] == '::1' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
   //Your Code
}

これにより、別のサーバーに移行しても安全になります。

前に述べたように、サーバーは ipv6 アドレスで処理するように構成されており、::1 は 127.0.0.1 に相当する ipv6 です。

于 2013-04-26T07:46:04.717 に答える
0

あなたはローカルホストにいるので:

if($_SERVER['REMOTE_ADDR'] == '127.0.0.1' || $_SERVER['REMOTE_ADDR'] == '::1') {
  //Your code
}
于 2013-04-26T07:57:15.557 に答える