ホームページ php教程 php手册 ブラック アンド ホワイト リスト: PHP は IP ブラック アンド ホワイト リスト フィルタリングを実装します。

ブラック アンド ホワイト リスト: PHP は IP ブラック アンド ホワイト リスト フィルタリングを実装します。

Jun 21, 2016 am 08:50 AM
ip nbsp test


運用保守の同僚から、php ファイルで IP フィルタリングを実行するというリクエストがありました。サーバーを直接設定するのは不便なので、php ファイルの先頭で IP を直接フィルタリングする必要がありました。
IP フィルタリング ルールは次の形式をとることができます:
1. 完全な IP アドレス (例: 192.168.0.1)
2. 特定の IP セグメント (例: 192.168.0.*)。
運用と保守は、複数の IP フィルタリング ルールで構成され、配列に保存されている IP ブラック/ホワイト リストをカスタマイズできます。コードを記述することで、IP ブラック/ホワイト リスト機能が実装されます。比較的単純な要件です。
まず関数を実装します。この関数は、IP が IP フィルタリング ルールに準拠しているかどうかを判断します。

function ip_test($ip,$iprule){
$ipruleregexp=str_replace('.* ',' ph',$iprule);
$ipruleregexp=preg_quote($ipruleregexp,'/');
$ipruleregexp=str_replace('ph','.[0-9]{1,3} ',$ iruleregexp);
if(preg_match('/^'.$ipruleregexp.'$/',$ip)) return true;
else return false;
}
コアを実装しましたip_test の関数 その後のプロセスは、リスト内の各ルールを単純に調べて、現在接続されている IP がルールを満たしているかどうかを判断し、対応する手順を実行するだけです。
ホワイトリスト、IP が少なくとも 1 つのルールを満たす場合に操作を継続します

$curr_ip=$_SERVER['REMOTE_ADDR'];
$white_list=array(...); //ホワイトリストルール
$test_success=false;
foreach($white_list as $iprule){
if(ip_test($curr_ip,$iprule)){
$test_success=true;
break;
}
}
if(!$test_success) exit('IP がホワイト リストにありません');
ブラックリスト、IP がすべてのルールを満たしていない場合でも操作の実行を続行します

$ curr_ip=$_SERVER['REMOTE_ADDR'];
$black_list=array(...); //ブラックリスト ルール
foreach($black_list as $iprule){
if(ip_test($curr_ip, $iprule)){
exit('IP in black list');
}
}
このようにして、IP ブラックリストとホワイトリストのフィルタリングの単純な PHP 実装が完了します。このブログは主に技術サポートや運用保守など、開発以外を本業としている人向けのブログです。あまりにも簡単すぎたので、最初は書きたくなかったのですが、後で同僚が私の協力に感謝し、インターネットでこれを長い間探していたが、適切な解決策が見つからなかったと言いました。 . もしかしたら本当に必要な人がいるかもしれないと思いました。​ この記事へのリンク http://www.cxybl.com/html/wlbc/Php/20130326/37394.html



このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Huawei Watch GT 5スマートウォッチが新機能を追加してアップデートされる Huawei Watch GT 5スマートウォッチが新機能を追加してアップデートされる Oct 03, 2024 am 06:25 AM

ファーウェイは、Watch GT 5 および Watch GT 5 Pro スマートウォッチ用のソフトウェア バージョン 5.0.0.100(C00M01) をグローバルに展開しています。これら 2 つのスマートウォッチは最近ヨーロッパで発売され、標準モデルが同社の最も安価なモデルとして登場しました。このハーモニー

鉄拳のカーネル・サンダースの夢をKFCが揚げた 鉄拳のカーネル・サンダースの夢をKFCが揚げた Oct 02, 2024 am 06:07 AM

『鉄拳』シリーズのディレクターである原田勝弘氏は、かつて真剣にカーネル・サンダースを象徴的な格闘ゲームに登場させようとした。 TheGamerとのインタビューで原田氏は、このアイデアを日本KFCに売り込み、ファストフード界のレジェンドをGとして追加したいと考えていたことを明かした。

初見:次期 Anker Zolo 4 ポート 140W ディスプレイ付き充電器の開封ビデオが流出 初見:次期 Anker Zolo 4 ポート 140W ディスプレイ付き充電器の開封ビデオが流出 Oct 01, 2024 am 06:32 AM

2024年9月初め、AnkerのZolo 140W充電器がリークされました。これは同社初のディスプレイ付き壁掛け充電器だったため、大きな話題になりました。 YouTube の Xiao Li TV からの新しい開封ビデオでは、この製品を直接見ることができます。

HyperOS を搭載した新しい Xiaomi Mijia グラフェン オイル ヒーターが到着 HyperOS を搭載した新しい Xiaomi Mijia グラフェン オイル ヒーターが到着 Oct 02, 2024 pm 09:02 PM

Xiaomiは間もなくMijiaグラフェンオイルヒーターを中国で発売する予定です。同社は最近、Youpin プラットフォームでホストされるスマート ホーム製品のクラウドファンディング キャンペーンを実施し、成功を収めました。ページによると、デバイスはすでに出荷され始めています

Cyber​​truck FSD のレビューでは、素早いレーン切り替えと全画面視覚化が賞賛されています Cyber​​truck FSD のレビューでは、素早いレーン切り替えと全画面視覚化が賞賛されています Oct 01, 2024 am 06:16 AM

テスラは最新の完全自動運転 (監視付き) バージョン 12.5.5 を展開しており、これには、ファウンデーション シリーズのトリム価格に含まれる機能を備えたピックアップが発売されてから 10 か月後に、約束されていたサイバートラック FSD オプションがついに付属します。 F

Garmin、新しいアップデートにより複数のスマートウォッチ向けの Adventure Racing アクティビティの改善をリリース Garmin、新しいアップデートにより複数のスマートウォッチ向けの Adventure Racing アクティビティの改善をリリース Oct 01, 2024 am 06:40 AM

Garmin は、最新のハイエンド スマートウォッチの新しい安定したアップデートのセットで月末を迎えます。要約すると、同社は Enduro 3、Fenix E、および Fenix 8 のバッテリー消耗の多さに対処するためにシステム ソフトウェア 11.64 をリリースしました (Amazon で現在 1,099.99 ドル)。

Samsung Galaxy Z Fold Special Edition、競合する名前が浮上、10月下旬に発売されることが判明 Samsung Galaxy Z Fold Special Edition、競合する名前が浮上、10月下旬に発売されることが判明 Oct 01, 2024 am 06:21 AM

サムスンの待望の折りたたみ式「スペシャルエディション」の発売には、また新たな展開が加わった。ここ数週間、いわゆる Galaxy Z Fold Special Edition に関する噂はかなり静かになりました。代わりに、焦点はGalaxy S25シリーズに移りました。

Manjaro 24.1「Xahea」は、KDE ​​Plasma 6.1.5、VirtualBox 7.1 などとともに起動します Manjaro 24.1「Xahea」は、KDE ​​Plasma 6.1.5、VirtualBox 7.1 などとともに起動します Oct 02, 2024 am 06:06 AM

10 年以上の歴史を持つ Manjaro は、インストールと使用が簡単で、初心者とパワーユーザーの両方に適した最もユーザーフレンドリーな Linux ディストリビューションの 1 つとみなされています。主にオーストリア、ドイツ、フランスで開発されたこの Arch ベースのディストリビューション

See all articles