私はTomcat 6.0.18上で動作しているWebアプリケーションで作業しており、Apache 2をリバースプロキシとして使用しています。これは正常に動作します。私はまた、たとえば、再配置などのためにTomcatをシャットダウンしたときに、Apacheにエラーページを表示させようとしています。しかし、httpd.confのErrorDocument
ディレクティブは、ローカルファイルに対してまったく動作していないようです。私は外部のURLと文字列を試して、これらの両方の場合は正常に動作します。しかし、以下は動作しません。ErrorDocumentがローカルファイルと連携していません
ErrorDocument 403 /Oops.html
ErrorDocument 404 /Oops.html
ErrorDocument 502 /Oops.html
ErrorDocument 503 /Oops.html
Oops.htmlファイルは私のhtdocsフォルダにあります。私は.htaccessファイルを使用していないよ
==> access_log <==
localhost - - [21/Nov/2010:12:23:36 -0800] "GET /home HTTP/1.1" 503 -
==> error_log <==
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy_http.c(54): proxy: HTTP: canonicalising URL //localhost:8080/home
[Sun Nov 21 12:23:36 2010] [debug] proxy_util.c(1412): [client ::1] proxy: http: found worker http://localhost:8080/ for http://localhost:8080/home
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy.c(819): Running scheme http handler (attempt 0)
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy_http.c(1693): proxy: HTTP: serving URL http://localhost:8080/home
[Sun Nov 21 12:23:36 2010] [debug] proxy_util.c(1790): proxy: HTTP: retrying the worker for (localhost)
[Sun Nov 21 12:23:36 2010] [error] proxy: HTTP: disabled connection for (localhost)
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy_http.c(54): proxy: HTTP: canonicalising URL //localhost:8080/Oops.html
[Sun Nov 21 12:23:36 2010] [debug] proxy_util.c(1412): [client ::1] proxy: http: found worker http://localhost:8080/ for http://localhost:8080/Oops.html
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy.c(819): Running scheme http handler (attempt 0)
[Sun Nov 21 12:23:36 2010] [debug] mod_proxy_http.c(1693): proxy: HTTP: serving URL http://localhost:8080/Oops.html
[Sun Nov 21 12:23:36 2010] [debug] proxy_util.c(1790): proxy: HTTP: retrying the worker for (localhost)
[Sun Nov 21 12:23:36 2010] [error] proxy: HTTP: disabled connection for (localhost)
注:ここではTomcatが実行されていないが、HTTPDがあるとき、私はアプリにアクセスしてみてくださいhttpdのからいくつかのログ出力があります。 htdocsフォルダに関する設定に問題があるようです。以下は、私のhttpd.confファイルのhtdocsフォルダーと関係があるビットです。私はApacheに取り組んでいないので、これがどれほど関連性があるのか、もっと投稿する必要があるのか分かりません。
<Directory "/usr/local/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ご迷惑をおかけして申し訳ありません。
EDIT:
Tomcatは、私がエラーログにこれらの行を参照して実行されています
[Sun Nov 21 13:30:11 2010] [error] [client ::1] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
[Sun Nov 21 13:30:11 2010] [debug] core.c(3046): [client ::1] r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri = /Oops.html
[Sun Nov 21 13:30:11 2010] [debug] core.c(3052): [client ::1] redirected from r->uri =/
何かが正しく設定されますが、私は私何かどこを持っていないされていません。これまでの回答に感謝しますが、それでも困っています。
あなたは多分、さらに木アップや構成のディレクトリに、線に沿ってどこかRewriteRulesを持っていますか? ....第2の考えでは、これは404文書を見つけられず、404文書などを見つけられないので再帰である可能性があります。 –
checkは 'DocumentRoot' +'/Ops.html' = '/ usr/local/apache2/htdocs/Ops.html'?あなたがさまざまなDocumentRootを使用していると思っています – ajreal
@ajreal:すべてのプロキシを無効にして、エラードキュメントディレクティブを削除して再起動しました。 DocumentRootとして設定したディレクトリのいくつかの他のページにアクセスできたので、正しく設定されているようです。 – richever