PHP5のpreg_match()でURLチェック

PHP5のpreg_match()でURLチェック

記事一覧PHP5のpreg_match()でURLチェック

PHP5 だからといって特別なことは何もありませんが、Google のキャッシュページからの JavaScript 経由のアクセスを除外しようと preg_match() を使ってみました。preg が ereg より高速っていうのは有名な話ですが、正規表現はなるべく多くのアクセスがくるところでは使いたくないところです。他に方法あるかな?

今回は、アクセスしてきた URL が、特定の文字列から始まっているかどうかを判定してるので単純です。サイトからは JavaScript 使ってアクセス情報をもらっているので、サーバ環境変数($_SERVER)のリファラーがアクセスした URL になります。

$url = $_SERVER["HTTP_REFERER"];

if (!preg_match("/^http:\/\/pakapaka.jp\//", $url)) {
    // とりあえずログに残す
    (省略)
    exit();
}

参考カテゴリ

エンジニア記事一覧

最新の投稿やよく見られているのオススメ記事一覧です。