• 締切済み

BASIC認証エラー時の表示HTML指定

Linuxで動かしているApacheで公開しているディレクトリに、.htaccessでBASIC認証をかけているディレクトリがあります。 BASIC認証としては機能しているのですが、エラー時にデフォルトの文字だけの画面(401云々)になってしまっています。 その時に、指定したHTML(体裁を整えたもの)にリダイレクトさせるには、.htaccessにどんな記述をすればよいのでしょうか。 Apacheのディレクティブなどに詳しくないので、BASIC認証の部分も合わせての記述例を教えていただきたいです。よろしくお願いします。

みんなの回答

回答No.1

ステータスコードに合わせたErrorDocumentディレクティブを指定します。 http://www.futomi.com/lecture/htaccess/error_document.html ErrorDocument 401 /bar/error.html とした場合、/bar/error.html にエラーページを作成しておけば認証失敗時にそのページが表示されます。

furnace
質問者

お礼

ご回答いただき、ありがとうございました。 とても参考になるサイトを教えていただきまして、ありがとうございます。 調査が不十分なまま、質問してしまいました。

関連するQ&A

  • .htaccessに記述できるディレクティブの制限

    Linuxで動かしているApacheで公開しているディレクトリに、.htaccessでBASIC認証を設定しています。 必要があり、.htaccessに別のディレクティブを追加したところ、Internal Server Errorとなってしまいます。 httpd.confなどで、使用できるディレクティブが制限されているのでしょうか。 それとも、追加したディレクティブの書き方に問題があるのでしょうか。 よろしくお願いします。

  • htaccessでユーザー認証が出来ない

    自宅サーバー構築にチャレンジしていますが、 .htaccessを利用してユーザー認証ができません。 状況は、 ・ブラウザには、500 Internal Server Errorが表示 ・Apach エラーログに AuthUserFile not allowed here となってしまいます。 Apache/1.3.12を使用しています。 .htaccessにOptions -Indexesのみ記述すると、ディレクトリツリーが表示されなくなりますが、ユーザー認証の記述を追加すると上記のエラーになってしまいます。 httpd.confの記述など、設定が必要なのでしょうか?

  • htaccess ssi basic認証

    ssiでヘッダー・フッターを読み込んでいるサイトがあります。 そこでまずhtaccessでssi、shtml→htmlへの設定をしています。 そのサイトの中でディレクトリを切ってbasic認証が必要なページを作成しました。 そのディレクトリの中ではヘッダー・フッターが読み込むことができず、エラーが表示されます。 an error occurred while processing this directive そこでbasic認証に使ったhtaccessにもssiの設定を追記しましたがうまく行きません。 ssiとbasic認証を同時に設定することはできるのでしょうか。

  • ベーシック認証について

    windows2000にApacheを入れてLAN内で稼動させています。 そこでベーシック認証を導入したいと思い、.htaccsess .htpasswdを作成したのですが、 認証なしに直接フォルダ内にアクセスされてしまいます。 インターネット上のレンタルサーバではうまく行くのですが、ローカルのwindowsでは何故かうまくいきません。 原因としては何が考えられるでしょうか。 デフォルトでは.htaccessが無効・・・ということがあったりするのですか。 その場合、httpd.confの変更箇所を教えていただければと思います。 それから、Windowsのパスの書き方も自身がありません。 フルパスは c:\_________________\.htpasswd でよかったでしょうか。\ではなく/ですか。 また、AuthGroupFile /dev/null の記述はどうすればよいでしょうか。 アドバイスいただければと思います。

  • 自宅サーバでのベーシック認証

    この度Apacheで自宅サーバを作り、ベーシック認証をしたいと思い、.htaccessと.htpasswdを作成、htaccessには、 <Directory C:/www/public_html/> AuthType Basic AuthUserFile C:/www/public_html/.htpasswd AuthGroupFile /dev/null AuthName "ID & Pass" AuthType Basic require valid-user </Directory> と記述し.htpasswdには、 ID:暗号化されたパスワード という風に記述しました。LAN内で実験してみたところ何も起きずにftpの画面になっただけでした。 昨日から何時間も挑戦しましたがどうしてもダメです。 どうぞご教授お願いいたします。 OSはwindows XPです。

  • Apacheのhttaccessで内部リダイレクト

    Apacheのhttaccessで内部リダイレクトアクセスのみを許可する Apacheのhttaccessで内部リダイレクトアクセスのみを許可 Apacheのhtaccessでアクセス制限を設定しようと考えています。 特定のファイル or ディレクトリへの直接アクセスを制限して 内部リダイレクトでのみファイル or ディレクトリへのアクセスを許可 するといったことは可能でしょうか? ファイル or ディレクトリにhtaccessでアクセス制限をかけて 内部リダイレクトでのみアクセスできると聞いたのですが。。。 はじかれてしまいます。。。 よろしくお願いします。。

  • PHP拡張子としてHTML型を使用したいのですが

    タイトルにも書いたように、 PHP拡張子としてHTML型を使用したいのですが、うまくいきません。 .htaccessファイルに AddType application/x-httpd-php .htm .html を記述し、転送の上、パミッションを644に設定しました。 ---- test.php ----------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <meta http-equiv="content-type" content="text/html; charset=EUC-JP"> </head> <body> <?php print "hello"; ?> </body> </html> ------------------------------------------------- 上記 test.phpを.htaccessファイルと同じディレクトリに転送して実行すると正常に動くのですが、test.htmlにリネームすると、何も表示されません。 尚、.htaccess でベーシック認証はできますの、.htaccess自体は無効にはなっていないようです。 サーバーの環境は Apache 2.0.50 Fedora Core 1 kernel 2.4.22 よろしく、お願いいたします。

  • 初歩的過ぎますが、.htaccessの複数設定方法を教えてください。

    すみません、基本中の基本なのだと思いますが 調べても見つからないので宜しくお願いします。 .htaccessを使って、様々な設定があうかと思うのですが1つのディレクトリ内で複数指定する場合どうすればいいのでしょうか?? 例えば、ベーシック認証を行い、そのファイル内でもう1つリダイレクトを記述!また、もっともっと沢山設定を行う場合もあるかと思いますが、その場合なにか決まりがありますか。 設定ごとに改行しなければいけない??設定ごとに1行あけないといけない?といった決まりのようなものがありましたら、教えていただけないでしょうか?? 初心者な質問で申し訳ないですが 宜しくお願いいたします。

  • Apacheでのベーシック認証

    Apacheでのwebサーバのベーシック認証を勉強しております。.htaccessにてvar/www/html/jikken/index.html をhttpsでしかアクセスできなくし、ベーシック認証にも成功いたしました。ですがvar/www/html/index.htmlには同じ設定をしてもhttpでアクセスできてしまいます。httpsの場合はきちんとベーシック認証をしてくれるのですがhttpの場合はアクセスできてしまうとともにベーシック認証もしません。 .htaccessの設定は SSLRequireSSL AuthUserFile /etc/httpd/conf/.htpasswd AuthGroupFile /dev/null AuthName "please enter your name" AuthType Basic require user hoge としてあり、httpd.confでは Directory "/var/www/html"> 以下の変更点はAllowOverride Allです。 OSはLinux Fedora Core 4です。 まとめるとhttp://hoge.jp/jikkenはアクセスできなくて(httpsで無ければアクセスできない+ベーシック認証) 同じ設定でhttp://hoge.jpではアクセス出来てしまうということです。(httpsのときは正常に作動する) ご教授よろしくお願いいたします。

  • .htaccessによるBasic認証ができない

    初歩的な質問で恥ずかしいのですが本当に困っているので助けてください。。。 自宅PC(XP)にapache1.3.9(訳あってこんな古いバージョンです)をインストールしました。 Basic認証を使用しようと思い↓のサイトを参考にやってみました。 http://www.shtml.jp/htaccess/basic.html .htaccessは c:/Program Files/Apache Group/Apache/htdocs/mysite/.htaccess に保存して、 AuthUserFileは /Program Files/Apache Group/Apache/htdocs/.htpasswd とし、 .htpasswdは同サイト内の"こちらにPHPプログラム"からID・PASSを作成しメモ帳で↑で指定した場所に保存しました。 その後ブラウザで配下のファイルにアクセスすると普通に表示されてしまうのです。認証画面すら出てきません。 ↓のサイトを見て設定してみたのですがダメでした。また、.txtにはなっていないはずです。 http://www.ponko2.com/win_htaccess.html なにか根本的に間違ったことをしているのでしょうか??わかる方がいらっしゃったら教えてください。お願いしますm(__)m