• ベストアンサー

.htaccessで特定のホストだけ転送させるには

嵐にあっています。 IPホストが●●●.●●.4~34の間でアクセスしてくる事まで分かっています。 .htaccessでアクセス制限をかけようとも思ったのですが、 その人物に警告を出したくって、あるURLに転送させたいと考えております。 そこで.htaccessの記述についての質問です。 order allow,deny allow from all deny from 制限をかけたいホスト・IP Redirect permanent /web/ http://●●.▲▲▲.jp/error.html 上の書き方では間違っているようです(^^;) まず、●●●.●●.4~34の間のホストだけ制限するにはどういった表記になるのでしょう? http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/access.html#access2 で勉強してみたのですが、少々自分にはレベルが高く、分かりませんでした。 あと、特定のページへ転送させる方法も間違っているのでしょうか? スミマセンが、初心者にも分かりやすく教えて頂けるとありがたいです。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • Nii
  • ベストアンサー率48% (79/162)
回答No.3

.htaccessは設置したディレクトリ以下すべてのリソースが、影響を受けますので、error.htmlを下位の階層に設置した場合は、再度.htaccessを設置して下さい。 但し、記述は order deny,allow deny from all allow from 制限をかけたホスト・IP で、制限をかけたホストからのみ参照されるようにすればいいのではと^^;

freeman555
質問者

補足

度々の回答ありがとうございます。 何とかできました! 本当にありがとうございました!

その他の回答 (2)

noname#30334
noname#30334
回答No.2

No.1さんの方法で良いと思いますよ。 >表示されるまでかなりの時間がかかります。 これは、無限ループして、最終的にブラウザがタイムアウトしているのではないでしょうか? もしかして、.htaccessとerror.htmlを同じ階層に置いていませんか? そうすると、denyされて、error.htmlに飛ばされるけど やっぱりdenyされて、またerror.htmlに飛ばされて・・・の繰り返しです。 他のサーバーに飛ばすか?適当なディレクトリに.htaccessを置いて、 上位の階層にerror.htmlを置いて試してみて下さい。

freeman555
質問者

補足

回答ありがとうございます。 >もしかして、.htaccessとerror.htmlを同じ階層に置いていませんか? はいその通りです(^^;) 同じ階層と言うか、トップページに制限をかけたいので、 上位の階層にerror.htmlを置けないんです。 こういった場合は下位の階層でもいいのでしょうか?

  • Nii
  • ベストアンサー率48% (79/162)
回答No.1

制限をかけたホスト・IPからアクセスがあった場合は、403のエラーになるので、これを貴方が作成したページにすればいいのでは? ErrorDocument 403 http://●●.▲▲▲.jp/error.html

freeman555
質問者

お礼

今やってみたんですが、表示されるまでかなりの時間がかかります。 エラーまでに時間がかかるのでそういう状況だと思います。 ちょっとこの方法だと無理っぽいです。 スイマセン。

freeman555
質問者

補足

回答ありがとうございます。 と言う事は order allow,deny allow from all deny from 制限をかけたいホスト・IP ErrorDocument 403 http://●●.▲▲▲.jp/error.html と記入すれば、 制限をかけたいホストのみがhttp://●●.▲▲▲.jp/error.htmlのページに転送され、他のユーザーはそのまま閲覧できるんですよね? 合ってます?(^^;)

関連するQ&A