投稿日:2003年12月06日 作成鷹の巣

No.13765 apache のエラーメッセージ編集について



apache のエラーメッセージ編集について

No.13765 投稿時間:2003年12月06日(Sat) 05:01 投稿者名:windows URL:

初心者ですが宜しくお願いします。

前々から、試そうと思っていましたアパッチのエラーメッセージの自作編集についてです。
windows2000pベースでapacheを入れています。多数のサイトでhttpd.conf中に「ErrorDocument 401 401.html」を書き込めばOKと見たので試しましたが、どうしても標準のエラー内容しか出力せずに、以下のメッセージが付加されます。

Additionally, a 401 Authorization Required error was encountered while trying to use an ErrorDocument to handle the request.

windowsでは無理なのでしょうか?
詳しい方居りましたら、ご教授の程宜しくお願い致します。


401.htmlの場所をよく確認して正しく設定してやってください。

No.13766 投稿時間:2003年12月06日(Sat) 06:03 投稿者名:APACHE URL:http://kemuri-net.dip.jp/~server/

> windowsでは無理なのでしょうか?
そんなわけない。
> 詳しい方居りましたら、ご教授の程宜しくお願い致します。
単にApacheに設定してあるドキュメントルートに401.htmlが無いから
エラーを吐いてるだけ。
401.htmlの場所をよく確認して正しく設定してやってください。


apache での自作エラーメッセージ表示

No.13767 投稿時間:2003年12月06日(Sat) 10:02 投稿者名:Ryokucchi URL:http://ryokucchi.no-ip.com/

横から失礼致します。m(_ _)m

> 「ErrorDocument 401 401.html」を書き込めばOKと

ErrorDocument 401 の後に半角空白を入れて表示したいエラー
メッセージのアドレスを入れる訳ですから、ドキュメントルート
に直接 401.html を置くのでしたら、401.html の前にスラッシュ /
を入れて

ErrorDocument 401 /401.html

のようにしないと表示されないのでは。もちろんドキュメントルート
に自作の 401.html がなければ出ませんよ。


希望どおりの動作が出来ません。

No.13769 投稿時間:2003年12月06日(Sat) 12:53 投稿者名:windows URL:

> 横から失礼致します。m(_ _)m
>
> > 「ErrorDocument 401 401.html」を書き込めばOKと
>
> ErrorDocument 401 の後に半角空白を入れて表示したいエラー
> メッセージのアドレスを入れる訳ですから、ドキュメントルート
> に直接 401.html を置くのでしたら、401.html の前にスラッシュ /
> を入れて
>
> ErrorDocument 401 /401.html
>
> のようにしないと表示されないのでは。もちろんドキュメントルート
> に自作の 401.html がなければ出ませんよ。


ドキュメントルートは、
DocumentRoot "C:/Program Files/Apache Group/Apache/htdocs/wwwroot"
にしていて、以前よりDDNSにてサーバー公開中です。もちろんですが、外部からも見ることが出来ます。
再度、見直しをして、「ErrorDocument 401 /401.html」もやりましたが、標準のエラーメッセージ

【標準のエラーメッセージ】
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.

の下欄に

Additionally, a 401 Authorization Required error was encountered while trying to use an ErrorDocument to handle the request.

というコメントが付け加えられ、やはり希望どおりの動作が出来ません。ドキュメントルート下に401.htmlはちゃんと
置いてあります。拡張子の間違えか?(htmlではなくhtm)と思われたのですが、htmlにしていました。
win2kのプラットフォームにてapacheを入れています。
宜しければ、ご教授ねがいたく、宜しくお願いします!


分りました!

No.13770 投稿時間:2003年12月06日(Sat) 15:22 投稿者名:Ryokucchi URL:http://ryokucchi.no-ip.com/

今まで 403 404 500 の自作エラーメッセージは使っていましたが、
401 は使っていませんでした。それで試してみたのですが、windows
さんの仰る通りの結果となりました。

でもよくよく考えてみれば、アクセスを許可されなかったディレク
トリにあるエラーメッセージが、表示されるはずはないのです。
つまりこのエラーメッセージは、アクセス制限で許可されなかった
人たちが見るものなので、その人たちがアクセスできるアドレスに
あるエラーメッセージでなければいけないのです。

試しにアクセスを許可されているユーザディレクトリや、icons の
ディレクトリに置いてそのアドレスを書き込んであげましたら、
しっかりと表示されました。m(^^)m


401.htmlを表示できるようになりました!

No.13771 投稿時間:2003年12月06日(Sat) 16:51 投稿者名:windows URL:

Ryokucchi さん、レスありがとうございました!
最初、レスの内容を見ても、私がズブの素人なんで理解できませんでしたが、やっとこ意味を理解し、
お蔭様で表示が出来るようになりました!!

まず、ドキュメントルートを
DocumentRoot "C:/Program Files/Apache Group/Apache/htdocs/"
に変えて、認証をするディレクトリを

######################################################################
<Directory "C:/Program Files/Apache Group/Apache/htdocs/wwwroot">
~(省略)~
AuthType Basic
AuthName "あなた誰ですか?"
AuthUserFile "C:/Program Files/Apache Group/Apache/htdocs/wwwroot/pass"
require valid-user
######################################################################

ErrorDocument 401 /401.html

にしました。これでwwwroot以下のアクセスに失敗した場合、htdocs下にある401.htmlを表示できるようになりました!!Ryokucchi さんの言う通り、アクセス認証で失敗したらそこに置いてある
ファイルを開こうなんて無理ですもんね。Ryokucchiさんのアドバイスが無ければ、わからぬままでした。
本当にありがとうございました。m(__)m


わたしも勉強しました

No.13772 投稿時間:2003年12月06日(Sat) 17:00 投稿者名:Ryokucchi URL:http://ryokucchi.no-ip.com/

そこまで詳しく解説しているサイトも少ないかも知れませんね。


AuthName に日本語使うのはよくなかったと思う。

No.13773 投稿時間:2003年12月06日(Sat) 17:57 投稿者名:APACHE URL:http://kemuri-net.dip.jp/~server/

> ######################################################################
> <Directory "C:/Program Files/Apache Group/Apache/htdocs/wwwroot">
> ~(省略)~
> AuthType Basic
> AuthName "あなた誰ですか?"
> AuthUserFile "C:/Program Files/Apache Group/Apache/htdocs/wwwroot/pass"
> require valid-user
> ######################################################################
>
> ErrorDocument 401 /401.html
AuthName に日本語使うのはよくなかったと思うが…


|目次|掲示板|過去ログ目次|▲頁先頭|