follow me

IPv6とIPv4とのアクセス元で表示を変える(PHP)

アクセス元が、IPv4とIPv6で表示するものを変えたい。
勿論、それぞれサーバにもIPv4とIPv6アドレスが着いているので、それぞれにhttpdプロセスをあげるのもアリかもしれないが。。。(VirtualHostでもいいのか。。。
とりあえず、PHPで判別してみた。
<?php
$ipv4 = '^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$';
if (preg_match('/' . $ipv4 . '/', $_SERVER['REMOTE_ADDR']) ) {
  echo "IPv4";
}else{
  echo "IPv6";
}
?>

とりあえず、せっかく所有していたドメイン ipv6geeks.org をIPv6勉強用に活用していく予定。

関連情報

IPv6とIPv4とのアクセス元で表示を変える(PHP) | 0 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。