0

約 100.000 個の IP (ブラックリストに登録済み) を含む .txt ファイルがあります。現在のユーザー IP がその .txt ファイルに存在するかどうかを確認します。存在する場合は、スクリプトの実行を停止する必要があります。

.htaccess を使用せずにこれを行う最も効率的な方法は何でしょうか。

4

2 に答える 2

1
$file = file_get_contents( "your_text_file.txt" );
if( preg_match( "/$ip/", $file ) ) {
  // block
}

preg_match を使用してブロックする場合は、検索文字列に改行を追加し、ピリオド文字をエスケープすることをお勧めします。そうしないと、任意の 1 文字に一致するためです (ただし、これは通常のユーザーをブロックする可能性があります)。htaccess は、このクエリやデータベース クエリにも適しています。

于 2013-03-27T18:54:10.643 に答える
0

データを保存する方法は、検索を高速化するのに役立つと思います。データをソートされた形式に保ち、二分探索のようなことを試みると、物事をより速く検索するのに役立ちます。私は理論の部分を提案しているだけです:)

于 2013-03-27T18:56:19.810 に答える