0

サーバーがダウンしているときは、ここからサイトの Coral Cache にアクセスできます。

http://someDomain.com.nyud.net/

現在、次のようにホームページの Coral Cache にすべてのページの 500 エラーを送信しています。

ErrorDocument 503 http://someDomain.com.nyud.net/

ただし、書き換えを使用して、ユーザーを正しいページに送りたいと思います。

http://someDomain.com/some/page.html <- Broken! Send user to:
http://someDomain.com.nyud.net/some/page.html

.htaccessでこれをどのように達成できますか? 同じサーバー上の別のページにリダイレクトするための書き換え例を多数見つけましたが、500 エラーでのみホストをリダイレクトするものは見つかりませんでした。

ありがとう。

4

1 に答える 1

1

ErrorDocumentディレクティブがこれをサポートしているようには見えません。

Coral Cacheが処理前にHTTPリファラーを取得できない場合(元のパスを取得する必要があります)、サーバー上のリソースへの外部リダイレクトを強制する必要があります。これにより、CoralCache上のリソースにリダイレクトできます。リファラーの使用例:

ErrorDocument 503 http://someDomain.com/some/errorhandler

RewriteCond %{HTTP_REFERER} ^http://someDomain.com/(.*)$
RewriteRule ^some/errorhandler$ http://someDomain.com.nyud.net/%1 [L,NC]

明らかにこれは素晴らしいことではなく、エラーを処理するカスタムスクリプトを作成するなど、別のアプローチを検討することをお勧めします(以下のガイドラインを参照)。

http://httpd.apache.org/docs/2.0/custom-error.html

于 2012-06-25T17:33:48.803 に答える