IPv6とIPv4とのアクセス元で表示を変える(PHP)
2011年7月 9日(土) 19:52 JST
閲覧数 4,959
アクセス元が、IPv4とIPv6で表示するものを変えたい。
勿論、それぞれサーバにもIPv4とIPv6アドレスが着いているので、それぞれにhttpdプロセスをあげるのもアリかもしれないが。。。(VirtualHostでもいいのか。。。
とりあえず、PHPで判別してみた。
とりあえず、せっかく所有していたドメイン ipv6geeks.org を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勉強用に活用していく予定。


