これは機能していません。エラーも発生しません
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//My code
}
//NOTE: echo $_SERVER['REMOTE_ADDR'] is "::1"
これは機能していません。エラーも発生しません
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//My code
}
//NOTE: echo $_SERVER['REMOTE_ADDR'] is "::1"
::1 を取得した理由は、ipv6 を使用しているためです。オフにするか、ステートメントに 127.0.0.1 と ::1 の両方を含めます。
if($_SERVER['REMOTE_ADDR'] == '::1' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1') {
//Your Code
}
これにより、別のサーバーに移行しても安全になります。
前に述べたように、サーバーは ipv6 アドレスで処理するように構成されており、::1 は 127.0.0.1 に相当する ipv6 です。
あなたはローカルホストにいるので:
if($_SERVER['REMOTE_ADDR'] == '127.0.0.1' || $_SERVER['REMOTE_ADDR'] == '::1') {
//Your code
}