Jetty Java Webアプリケーションを実行しているアプリサーバーの前にnginxWebサーバーがあります。
プロキシされたJettyサーバーがダウンした場合にHTTP503を返すようにnginxを構成したいと思います。
このようにして、メンテナンスのためにアプリサーバーを停止すると、クラッシュした場合に503がクライアントに返され、サイトが一時的に利用できないことをクライアントに通知します。
ただし、基本構成では、Nginxはproxy_passの場所に接続できない場合、HTTP 502 BadGatewayを返します。
代わりに503を報告するようにnginxを構成することは可能ですか?
エラーページ を設定することでこれを行うことができます。
error_page 502 =503 /maintenance.html
Martin Fjordvaldの回答の内容だけで、まだ502を取得していましたが、実際のmaintenance.htmlページはありませんでしたが、これは機能しているようです。
location / {
error_page 502 =503 /maintenance.html;
include proxy_params;
proxy_pass http://unix:/var/run/my.sock;
}
location /maintenance.html {
return 503;
}