- 締切済み
htaccess
ホームページを開設しまして.htaccessでアクセス制限をかけています。メンバーとそれ以外を分けたいと思いパスワードが違っていたら(またはパスワードがわからなければキャンセルをクリックして)違うページに飛ばせたいのですがそのやりかたが解りません。(404では無く指定のページに飛ばせたいのです。) また、"please your ID and password"の部分を2行にして"IF you not member,please push cancel"と言う文字を追加したいと思っております。 どの様にしたらよろしいのでしょうか?宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yambejp
- ベストアンサー率51% (3827/7415)
httpサーバーの種類くらい書いた方がよいですよ。 Basic認証の場合、ログイン時のダイアログ自体はブラウザに依存するので、 AuthNameで多少カスタマイズができる以外はあまり期待はできません。 別な認証方法や認証ページを作ればログイン画面は調整ができそうですが。 それと違うページに飛ばすのは.htaccessに ErrorDocument 401 /login.htm など表記することになります。 ただ、login.htmは認証外のページになければそれ自体にアクセスができない のでページ構成には気をつける必要があるでしょう。
- shimix
- ベストアンサー率54% (865/1590)
認証で弾かれた場合には401のエラーですから、ErrorDocumentで401を違うページにすればいいのでは?他のエラーでは使われませんから>401。metaタグで飛ばすhtmlとかLocationヘッダで飛ばすphpスクリプトにしてもいいでしょう。 #ただし、401用のエラーページ自体を認証が必要な位置に置かないように(汗 なお、"please your ID and password"の部分はAuthName(realm:認可領域)の名前を示す部分ですから、英数字記号のみで構成すべきです(とApacheのドキュメントにも書いてあったと思います)。
お礼
ご回答ありがとうございます。 今PHPなど勉強しています。 色々ためして見ようかと思っております。
お礼
ご回答ありがとうございます。 Apache2でwebサーバを運用しています。 「.htaccessにErrorDocument 401 /login.htmを記載」 ですね。勉強になりました。