⚠️ 記事内に広告を含みます。

nginxで固定レスポンスを返す方法 メンテページも表示可能

固定レスポンスを返す設定

webサーバの動作を確認する際にわざわざディレクトリを作成してファイルを置くのは面倒です。

そういった際に固定レスポンスを利用すると設定ファイルに記述するだけで簡単な文字列を返すことができます。

  • AWSのALBだけでエラーページを返す
  • ヘルスチェック用URL・レスポンスを設定ファイルだけで用意

等の使い方があります。

ステータスコードのみを返す

location /test {
return 200 ;
}

本文も返す

本文はステータスコードの後に記述できます。

location /test {
return 200 "test";
}

しかし、このままでは

content-type: application/octet-stream

というcontent-typeになりブラウザ上ではテキストとして認識されずファイルのダウンロードが始まってしまいます。

curlで確認する分には問題ありませんが、ブラウザ上で確認したい場合はうざったいです。

そういう時はadd_headerでContent-Typeをtext/plainに指定します。

location /testpage {
add_header Content-Type text/plain;
return 200 "test";
}

こうするとブラウザ上でテキストが表示されるようになります。

HTMLを直打ちして簡単なメンテーページを表示させたい

HTMLタグを利用してもう少し装飾したいという場合はContent-Typeをtext/htmlに変更するとHTMLを直打ちできます。

簡単なメンテーページを表示させたいときは便利です。

location /testpage {
add_header Content-Type text/html;
return 503 "<HTML><HEAD><TITLE>メンテナンス中です</TITLE></HEAD>
<BODY><H1>メンテナンス中</H1>本日~24:00までメンテナンス中です。<P><HR></BODY>
</HTML>";

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です