htaccessで特定IP以外をリダイレクトする方法とは?

このQ&Aのポイント
  • 特定のIP以外のアクセスをリダイレクトさせる方法がわからない。htaccessの記述が間違っているのか不明。
  • htaccessの記述は正しいが、特定IP以外のアクセスがyahooにリダイレクトされてしまう。
  • 質問者は自分のIPを記述しているため、リダイレクトが正しく機能していないのかもしれない。
回答を見る
  • ベストアンサー

htaccess で特定IP以外をリダイレクト

特定IPの以外のアクセスは指定URLへリダイレクトさせたいのですが、うまく行きません。 ↓のように.htaccessに記述しているのですが間違っているんでしょうか? ------------------------------------------- order allow,deny allow from XXX.XXX.XXX.XXX deny from all ErrorDocument 403 http://yahoo.co.jp ------------------------------------------- 「XXX.XXX.XXX.XXX」のIPは自分のIPを記述しているので、yahooにリダイレクトされないのが正しい動作なのですがyahooへリダイレクトされてしまいます。 お詳しい方がおられましたらご回答宜しくお願い致します。

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

  • ベストアンサー
  • soupdogg
  • ベストアンサー率46% (13/28)
回答No.1

order allow,deny  だと、allowの指定より、denyの指定が優先されるので、自分自身を含めたすべてが403になり、リダイレクトされると思います。 order deny,allow  と書いてはいかがですか?なお、こういった動作確認をされるなら、自ホストを確実に区別するために、 allow from localhost や allow from 127.0.0.1  などの書き方をされたほうが、余計な間違いや勘違いを生まなくてよいと思います。

WinSCP
質問者

お礼

ありがとうございました!

関連するQ&A

  • htaccessで、特定IP以外をリダイレクトさせたい。

    初心者です。 .htaccessを使ってメンテナンス画面を表示させようと思っています。 条件として、 ・特定のファイルへのアクセスを、リダイレクトさせる。 ・動作確認を行うため、自分のIPの場合はリダイレクトさせない。 ファイルに対してのリダイレクトは、 Redirect /aaa/aaa.php /maintenance/maintenance.html 特定IPに対して、ディレクトリ単位のリダイレクトは、 order deny,allow deny from all allow from xxx.xxx.xxx.xxx ErrorDocument 403 /maintenance/maintenance.html というところまでは解決したのですが、 「特定IPに対して、ファイル単位のリダイレクト」 は、どのように指定すればよいのでしょうか?

    • ベストアンサー
    • HTML
  • .htaccessで弾けない

    悪意のある特定のIPからのアクセスを別サイトに飛ばすため、 下記のように.htaccessファイルに記述しています。 <Limit GET POST PUT> order allow,deny allow from all deny from 特定のIP </Limit> ErrorDocument 403 http://www.yahoo.co.jp/ ところが、.htaccessファイルを設置しても、アクセス解析を見ると 相手のIPからのアクセスが残っています。 .htaccessで弾かれずに、普通に閲覧できているようです。 試しに自分のIPを記述してみたところ、確かにhttp://www.yahoo.co.jp/に 飛ぶので、.htaccessは機能しているはずなのですが、なぜだかわかりません。 対処法をご存知の方がいらっしゃったらご教示ください。 宜しくお願いします。

  • htaccessでoreder allow,denyとRewriteEngine onは同時に使える?

    .htaccessを使用して特定IP(***.xxx.xxx.xxx)からのアクセス制限と同時に特定IP(yyy.yyy.yyy.***)の場合は別サイトへ転送するのを同時にやりたいです。 独立して.htaccessに記述すると動作しましたが、2つとも記述すると動作しませんでした。 order allow,deny allow from all deny from ***.xxx.xxx.xxx RewriteEngine on RewriteBase / RewriteRule .* http://zz*.com/

  • htaccess:制限IPのうち特定のIPのみ許可

    .htaccessで、 order allow,deny allow from all deny from deny from 118.243.0.0/16 のようにネットマスクを利用して複数のIPアドレスからのアクセスを制限した上で、そのうち(制限したIPアドレスに含まれるうち)の一つのIPアドレス (例:118.243.126.243)にのみアクセスを許可したい場合、.htaccessに具体的にどのように記述すればよいのでしょうか? どのように記述するか分からないのですが、118.243.126.243をとばした「118.243.0.0から118.243.126.242」と「118.243.126.244から118.243.255.255」を別々に制限すればよいように思います。ただし、記述の仕方が分からないので教えてください。 よろしくお願いします。

  • .htaccessで複数設定するには?

    .htaccessを使って「特定のIPアドレス・ホストからのアクセスを拒否」と 「特定のリンクからのアクセスを拒否 」の2つを一緒に設定したいのですが、 どうすればいいのでしょうか? 単独での書き方はそれぞれ調べて分かったのですが、1つにまとめての記述方法が分かりません。 --------------------------------------------------- order allow,deny allow from all deny from ●● deny from ○○ deny from ▲▲ deny from △△ SetEnvIf REFERER "http://○○○.com/" Ref1 Order Allow,Deny Allow from all Deny from env=Ref --------------------------------------------------- といった感じに記述したものの、全く動作してくれません。 ご存知の方いらっしゃいましたら、宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • .htaccess 特定IPのみアクセス許可

    .htaccess 特定IPのみアクセス許可↓ order deny,allow deny from all allow from 特定IP 上記設定がされているサイトに、特定IP以外の他人がアクセスする方法はありますでしょうか?(ハッカーなど) 現在、私のサイトで外部に洩れてはならない情報を取り扱っており、 .htaccessでアクセス制限は行っているのですが、 少々心細いので質問させていただきました。

  • .htaccessで困ってます

    .htaccessで携帯のIPのみ接続を許可しています 現在の設定は ------------------------------ order deny,allow deny from all #docomo allow from 210.153.84.0/24 #ezweb allow from 210.169.40.0/24 #softbank allow from 123.108.236.0/24 #willcom allow from 61.198.142.0/24 ErrorDocument 403 http://転送先 #自分のIP allow from ○.○.○.○ ------------------------------- ※docomoとかのIPリストは省略してます これにクローラーのIPを許可させようとすると 500エラーになってしまいます どこがダメなのでしょう・・・? ------------------------------ order deny,allow deny from all #docomo allow from 210.153.84.0/24 #ezweb allow from 210.169.40.0/24 #softbank allow from 123.108.236.0/24 #willcom allow from 61.198.142.0/24 ErrorDocument 403 http://転送先 #自分のIP allow from ○.○.○.○ #クローラー allow from△.△.△.△/△ ------------------------------- #自分のIP allow from ○.○.○.○ で許可されていたので、もう1つ追加した形なのですが・・ △/△という指定方法で許可する事は難しいですか?

  • .htaccess の書き方について教えてください。

    こんにちは、質問させてください。 webサイトを運営しており、.htaccessによるアクセス規制を検討しています。 下記のように複数のアクセス規制をしたい場合、どのように書けば良いでしょうか? ○特定IPアドレスからのアクセス ○プロキシ経由でのアクセス ○特定URLからのアクセス 過去ログ等を検索してみて、現在、以下のようなソースにしています。 ------------------------------------- #特定IPとプロキシ経由の拒否 order allow,deny allow from all deny from ***.***.**.*** order deny,allow deny from all allow from .jp allow from .net allow from .com #特定アドレスからのアクセス拒否 SetEnvIf Referer "http://sample.url.com" ref01 order Allow,Deny Allow from all Deny from env=ref01 ------------------------------------- プロキシ経由の場合、すべてを弾くのは難しいと思いますが… 何か他に良い書き方がありましたら、アドバイスをお願いします。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • htaccessでのErrorDocumentが出来ない…

    初めての質問なので、おかしな所があったら突っ込んでやってくださいm(_ _)m サーバーはApacheの2.0.53を使っています。 OSはWindowsXPです。 htaccessのErrorDocumentを使って、エラーページに自分で作ったものを表示させようと思ったのですが、500の内部エラーがでてしまいました。 「ErrorDocument 404 /404.html(改行)」 という設定で、404.htmlファイルはhtaccessと同じディレクトリにおいてあります htaccess自体はホスト制限の order allow,deny allow from all deny from ---.---.--.-- 等の設定で動作してるのでhtaccessが使えないということは無いと思います。 Apacheのエラーログには ErrorDocument not allowed here と表示されていますが、いまいち理解ができなくて困っています。 何か手がかりだけでもいいので教えてもらえないでしょうか?お願いしますm(_ _)m

  • .htaccessでのIP・ホストの制限について

    Mac os9.2、IE5.1.7、Dreamweaver MXでの作業です。 サイトトップにオンラインブックマークからのアクセス制限をかけたいのですが、どうやっても上手く出来ず、こちらに質問させて頂きました。 作業は「.htaccess.txtをIndex.htmlと同じ階層に作成」→「.htaccess.txtをDreamweaver MXでASKIi転送」→「ロリポのFTPからファイル名とパーミッションを604に変更」という感じです。 .htaccessの記述はロリポから参考URLになっていたサイトを参考にして作ったのが以下 AddHandler cgi-script htaccess order allow,deny allow from all deny from ht.tp://bookmarks.yahoo.co.jp/my コレは全く効きませんでした。次にこちらで参考URLになっていた.htaccess自動作成サイトで作ったのが以下 <Files ~ "^.(htaccess|htpasswd)$"> deny from all </Files> Options -Indexes setenvif referer "ht.tp://bookmarks.yahoo.co.jp/my" bad_referer1 order allow,deny allow from all deny from env=bad_referer1 こちらは500エラーになります。今、仕方なく、TOP以降へ入室する際にパス認証をかけてます(これはロリポでのサービス内なので、ちゃんと効いてます)。階層が違うので.htaccessが2つあるのがダメなのでしょうか? パス認証は出来れば使用したくないので、特定のURL、IP、ホストからの制限にしたいのです。どうぞご指導お願い致します。(当方.htaccessは全くの初心者です)