ページ画面右上に、アクセス元のIPアドレスがIPv4かIPv6かにより画像を表示します。
現在のところ"REMOTE_ADDR"変数を使用して、CGI, FastCGI, Server Side Includes (SSI)の3通りによって判定を行なっています。
Rubyを使ってCGI、FastCGIを作成しています。FastCGIの利点はプロセスが生成済みである点と画像データを起動時に読み込んでいるぐらいですが、それでもわずかに高速です。
<img src="/checkipv6/output.cgi" alt="IPv6 Access Checker @yadiary.net" />
<img src="/checkipv6/output.fcgi" alt="IPv6 Access Checker @yadiary.net" />
このページ先頭で画像を表示させている個所のxHTMLは次の通りです。
<dl>
<dt>IPv4によるアクセスの場合</dt>
<dd><img src="access_over_ipv4.png" alt="IPv4でアクセスした場合に表示される画像" />を表示します。
<!--#if expr='"%{REMOTE_ADDR}" =~ /^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$/' -->
現在はIPv4でアクセスしています。<br />
<!--#endif -->
</dd>
<dt>IPv6によるアクセスの場合</dt>
<dd><img src="access_over_ipv6.png" alt="IPv6でアクセスした場合に表示される画像" />を表示します。
<!--#if expr='"%{REMOTE_ADDR}" !~ /^[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*$/' -->
現在はIPv6でアクセスしています。<br />
<!--#endif -->
</dd>
</dl>
Created: 2010-12-09, Last modified: 2010-12-11