web-dev-qa-db-ja.com

nginxで502と504をシミュレートする

これらのエラーをシミュレートする方法はありますか?そのためにいくつかのカスタムファイルを作成しましたが、正しく表示されることを確認したいと思います。バーチャルホストごとに異なるメッセージを作成しました。

前もって感謝します。

5
MihaiM

Nginx.conf内のすべてのロケーションブロックにカスタムエラーページを設定することも、サイトのグローバルエラーページを設定することもできます。

502エラーの例:

 location/my_blog {
 error_page 502 =/502.html; 
 return 502; 
} 

グローバル502エラーページ:

 server {
 listen 80; 
 error_page 502/502.html;

location/ test {
 return 502; 
} 
} 

標準エラーコードを一緒に追加して、いくつかのタイプのエラーの単一ページを作成することもできます。

 location/my_blog {
 error_page 500 502 503 504 =/server_error.html;
...
}

Httpセクションでserver2という名前のアップストリームサーバーが定義されていると仮定して、まったく異なるサーバーにリダイレクトするには、次のようにします。

 upstream server2 {
 server10.0.0.1:80;
}

server{
...
 
 location/my_blog {
 error_page 502 = @ try_server2; 
 return 502; 
} 
 
 location @ try_server2 {
 proxy_pass http:// server2; 
} 
} 

manual で詳細を確認できます(Web上に他の便利な例があるかもしれません)。

6
Studer