正規表現でIPアドレスを範囲で書くときに便利なページ
携帯からのアクセスをリダイレクトしたり、開発環境(ネットワーク)と本番環境で機能を振分けたり、など、アクセス元のIPアドレス($_SERVER['REMOTE_ADDR'])をチェックして処理を分岐することってよくありますよね。
そういった場合、IPアドレスを一つ一つ指定していては膨大な作業になってしまい効率的ではありません。
セグメント単位(IPアドレスの範囲)に手軽に指定したいものです。
PHPでIPアドレスの範囲を指定する方法として、正規表現(preg_match など)が考えられます。
しかし、24ビットマスクのような簡単なIPアドレスの範囲であればとくに悩むことなく正規表現も記述できますが、
IPアドレスの範囲によっては複雑な指定になってしまうことがあります。
そのような場合、下のGoogle Analyticsサービスのフィルタ機能を解説したサポートページなのですが、このページを使えば頭を悩ませずに簡単に複雑なIPアドレスの範囲を正規表現で記してくれます。
IP アドレスの範囲を指定して、そこからのトラフィックを除外するにはどうしたらよいですか?
まずは、(ステップ1)最初の IPアドレス に 範囲の最初のIPアドレスを入力します。次に(ステップ2)最後の IPアドレス に範囲の最後のIPアドレスを入力します。

入力が終わったら、[Generate RegEx]ボタンをクリックします。

これでステップ3のテキストボックスに指定した2つの範囲に適合する正規表現のできあがりとなります。

アラッ、簡単!あとはこれをPHPのプログラムに貼り付ければ、簡単に複雑なIPアドレス範囲も指定できますね!!
そういった場合、IPアドレスを一つ一つ指定していては膨大な作業になってしまい効率的ではありません。
セグメント単位(IPアドレスの範囲)に手軽に指定したいものです。
PHPでIPアドレスの範囲を指定する方法として、正規表現(preg_match など)が考えられます。
しかし、24ビットマスクのような簡単なIPアドレスの範囲であればとくに悩むことなく正規表現も記述できますが、
IPアドレスの範囲によっては複雑な指定になってしまうことがあります。
そのような場合、下のGoogle Analyticsサービスのフィルタ機能を解説したサポートページなのですが、このページを使えば頭を悩ませずに簡単に複雑なIPアドレスの範囲を正規表現で記してくれます。
まずは、(ステップ1)最初の IPアドレス に 範囲の最初のIPアドレスを入力します。次に(ステップ2)最後の IPアドレス に範囲の最後のIPアドレスを入力します。

入力が終わったら、[Generate RegEx]ボタンをクリックします。

これでステップ3のテキストボックスに指定した2つの範囲に適合する正規表現のできあがりとなります。

アラッ、簡単!あとはこれをPHPのプログラムに貼り付ければ、簡単に複雑なIPアドレス範囲も指定できますね!!
Windows版PHP5.3.xの選び方
Winsows用のPHPは バージョン5.3 からVC9(Visual Studio C++ 2008)のスレッドセーフ版、ノンスレッドセーフ版、それからVC6(Visual Studio C++ 2003)のスレッドセーフ版、ノンスレッドセーフ版の全部で4つのバイナリがあります。
どのような環境でどのバイナリを選べばいいのかちょっと分かりづらかったので調べてみました。
■ Apche 1.x 、 Apache 2.x を使うならVC6版を選択
■ IISを使うならVC9版を選択
さらに、VC9版を利用する場合、ランタイムが必要な場合があるようです。ランタイムはこちらからダウンロードしてください。→
Microsoft 2008 C++ Runtime (x86)または
Microsoft 2008 C++ Runtime (x64)
★ モジュールで実行するならスレッドセーフ(Thread safe)版を選択
★ CGIで実行するならノンスレッドセーフ(Non thread safe)版を選択
表にまとめてみます。
どのような環境でどのバイナリを選べばいいのかちょっと分かりづらかったので調べてみました。
■ Apche 1.x 、 Apache 2.x を使うならVC6版を選択
■ IISを使うならVC9版を選択
さらに、VC9版を利用する場合、ランタイムが必要な場合があるようです。ランタイムはこちらからダウンロードしてください。→
★ モジュールで実行するならスレッドセーフ(Thread safe)版を選択
★ CGIで実行するならノンスレッドセーフ(Non thread safe)版を選択
表にまとめてみます。
VC6 | VC9 | |
スレッドセーフ (Thread safe) | Apache 1&2 モジュール実行 | IIS モジュール実行 |
ノンスレッドセーフ (Non thread safe) | Apache 1&2 CGI実行 | IIS CGI実行 |
PHP 5.2.12 がリリースされました
PHP のバージョン 5.2.12 がリリースされました。
60以上のバグフィックスおよびセキュリティフィックスされてます。
更新内容についてはコチラ →
http://www.php.net/ChangeLog-5.php#5.2.12
ダウンロードについてはコチラ →
http://www.php.net/downloads.php
60以上のバグフィックスおよびセキュリティフィックスされてます。
更新内容についてはコチラ →
ダウンロードについてはコチラ →