特定IPを指定URLへジャンプさせる

[新着] Webテンプレートを仮オープンしました



0   名前: てつ : 2005/05/19 19:08
荒らしの対策で、WEBサイトを閲覧に来るある特定のIPホストを指定URLへリダイレクトしたいと
考えております。
htaccessなど調べましたが、拒否設定や通常のURL転送は可能なようですが、
特定のIPホストへのジャンプは見つかりませんでした。

拒否ではなく、なるべく対象のIPホストに気付かれないように行いたいと
思っています。
宜しくお願いします。

1   名前: きんぎょ : 2005/05/19 19:08
CGIでやるのが手っ取り早いかと。
たとえば、index.cgiでIPを見て、それで振り分ける。

#IPは変わる場合がありますがそこらへんどうなんでしょ?

2   名前: てつ : 2005/05/19 19:08
CGIが手っ取り早いですか...
相手のIPはずーと変わっていませんので、IPで制御したいと思います。

サンプルのCGIありますでしょうか。
宜しくお願いします。

3   名前: きんぎょ : 2005/05/19 19:08
適当に作ってみたので間違っているかもしれませんが大体こんな感じです。
もちろんサーバでPerlが使えないとだめです。(Perlのパスは適当に書き換えてください)

#!/usr/local/bin/perl

# 拒否IPを指定(ひとつだけ)
$kyohi_ip = "123.456.789.0";

# 拒否IPに行かせるページ
$dummy_url = "http://www.yahoo.co.jp/";

# 普通の人に行かせるページ
$normal_url = "http://www.google.co.jp/";

$remote_addr = $ENV{'REMOTE_ADDR'};
if ( $remote_addr == $kyohi_ip ){
print "Location: $dummy_url\n\n";
}
else{
print "Location: $normal_url\n\n";
}

__END__

4   名前: 皆川 : 2005/05/19 19:08
はじめまして。
こういうもののことでしょうか。

(.htaccessに記述)
<Limit GET POST PUT>
order allow,deny
allow from all
deny from [相手のIPアドレス]
</Limit>
ErrorDocument 403 [飛ばし先]

飛ばし先は、htaccess.を設置したディレクトリ下以外で。
(当たり前ですが、403 Forbiddenになってしまうので)

5   名前: てつ : 2005/05/19 19:08
きんぎょさん、皆川さん、ありがとうございます。

早速試してみたいと思います。

一覧へ戻る