- 締切済み
「.htaccess」に関して質問です。
「.htaccess」に関して質問です。 アクセス制限とリダイレクトを同時にかけて 自分はパスワードを入力してサイト内を見る事ができるが 一般の閲覧者はリダイレクト先のページに飛ばす…ということは出来ますか? 今のところ、アクセス制限画面が出ずにリダイレクトされてしまい、 自分もサイト内を見られない状態です(当然かもしれませんが…)。 目的はサーバー移転です。 さる事情により旧サーバーは解約済み 新サーバーは空っぽで、 URLは既に新サーバーに繋がっています。 このままだとサイト構築の一部始終を一般の方々に見られてしまいます。 ちなみにショッピングサイトなので、 作業中は絶対見られるわけにいかないです。 どなたかヒントをいただけないでしょうか? 当方、「.htaccess」は初めてです。 どうぞよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- uwi
- ベストアンサー率74% (55/74)
アクセス制限をかけて失敗だった時にリダイレクトしたいということですか? あるIPアドレス(管理PC)からは認証(管理PCでもパスワードを知らないと見れない)、他のIP(一般PC)からはリダイレクトという設定で、知らない人間は作業中を見ることができないという要件は満たしていると思いますが問題あるのでしょうか? 401処理は通常のエラーではありません。簡単に説明すると認証に失敗したから401になるのではなく、認証処理そのものが401処理みたいな感じです。(本当はちょっと違うので詳しく知りたい場合は別で調べてください。) ErrorDocument 401 http://www.example.co.jp/ とかいてもapacheは仕様で無視します。 認証失敗後のリダイレクトは.htaccessだけで設定するのは難しいと思います。やったことはありませんが、一度ローカルファイルを指定してそのページから飛ばすことはできるかもしれません。 ちなみに私ならサーバにそんな変な設定するくらいならログインページをテスト用に作ります。
- uwi
- ベストアンサー率74% (55/74)
管理者の接続IPが決まっているとすると以下のようにするのが簡単だと思います。 (mod_rewrite でも出来ると思います。) .htaccess --- order deny,allow # 許可するIP allow from 127.0.0.1 deny from all # 許可したIPに対しては認証 AuthUserFile /etc/passwd_file AuthName realm AuthType Basic Require valid-user # アクセス拒否(403)の場合は http://www.example.co.jp/ に飛ばす ErrorDocument 403 http://www.example.co.jp/ ---
お礼
回答ありがとうございます! リアクションが遅くなってしまい、申し訳ありません。 色々試しておりましたが、うまく行きません。 どのように記述したかをここにアップしたかったのですが、 NGワードとして認識されてしまうようで、何度ためしても投稿できません。。。 ちなみに、どう上手くいかなかったかと申しますと IDとパスワードを入れるためのウィンドウは出てくるのですが、 間違ったIDとパスワードを入れると“401 Authorization Required” 何もいれずにキャンセルすれば “Internal Server Error”となります。 指定したURLへは飛んでくれません。 教えていただいた「ErrorDocument 403」は「ErrorDocument 401」に直して使いましたが やはりだめでした。 なにかヒントなどあれば教えていただけるとありがたいです。
補足
6
お礼
2度にわたるご回答、ありがとうございました。
補足
引き続き、回答ありがとうございます。 >あるIPアドレス(管理PC)からは認証(管理PCでもパスワードを知らないと見れない)、他のIP(一般PC)からはリダイレクトという設定で、知らない人間は作業中を見ることができないという要件は満たしていると思いますが問題あるのでしょうか? 他のIP(一般PC)からリダイレクトされない状態です。 管理PCからも、一般PCからも、 どちらもアクセス制限しか動いてくれません。 きっと、私の.htaccessの記述の仕方が悪いのでしょう。 uwi様の記述にありました「---」は、 そのまま「---」と記述してよろしいのでしょうか? それとも改行などのことでしょうか? ちなみにリダイレクト先は、ショッピングサイトのロゴと「只今臨時休業中」の文字を入れる予定です。 現状ですと、一般の方がサイトを訪れたとき、サイトが突然なくなったように思ってしまう状態だからです。 >認証失敗後のリダイレクトは.htaccessだけで設定するのは難しいと思います。 なるほど、了解いたしました。