- 596 名前:nobodyさん mailto:sage [05/01/29 16:57:47 ID:???]
- >594-595
俺もperlをちょこっといじって遊んでるくらいの人間なんで、あんま自信ないけど・・・ if ($deny[0]) { local($flag)=0; foreach (@deny) { #↓これは、@denyから取り出した内容($_)が空('')だったらループ抜け、だと思 if ($_ eq '') { last; } $_ =~ s/\*/\.\*/g; if ($host =~ /$_/) { $flag=1; last; } #↑アクセスした人のホスト($host)に@denyから取り出した内容($_)が #↑含まれていたら$flagの値を1にしてループを抜ける #↑つまり「$flag==1なら拒否」 # これを「$flag==1なら許可」に変えたい → 言い換えると「$flag=!1なら拒否」 } if ($flag=!1) { &error("許可されていないアクセスです!") } #↑ということでここをこう変更すればいけるんでは? } ただ「特定のIPからの制限」なら、$hostじゃなくて$addrにするべきなんじゃ?って気がするけど
|
|