去年の6月あたりに、ELBでALBのリダイレクトおよび固定レスポンスのサポートを発表しました。が!!当時は日本語表記がなく、文字化けがひどいことになっており、検証できない状況だったので、今回メンテナンス画面を表示してみました。
■ALBのルールの表示/編集
- ルールの追加
パスを *
にして 固定レスポンス
を選択し、Content-Type
を text/html
、以下のhtmlをぶち込みます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<!DOCTYPE html> <html> <head> <meta content='text/html; charset=UTF-8' http-equiv='Content-Type'> <title>システムメンテナンスのお知らせ</title> </head> <body> <div style='width: 640px; margin: 50px auto;'> <div style='border: 1px solid #ccc; padding: 30px; margin-top: 30px;'> <h2 style="color: #F00">システムメンテナンスのお知らせ</h2> <p> いつもADACHIN SERVER LABOをご利用いただき、ありがとうございます。<br /> このたびサービス向上のため、システムメンテナンスを実施いたします。<br /> 下記時間帯でサービスがご利用いただけません。<br /> お客さまには大変ご迷惑をおかけいたしますが、何卒ご了承いただけますようよろしくお願い申し上げます。 </p> <p> ご不便をおかけいたしますがよろしくお願い申し上げます。 </p> </div> </div> </body> </html> |
あとは保存するだけ。
- 確認
戻す場合は削除すればOK!
■社内はメンテナンス画面を表示しない場合
- 送信元IP
xxx.xxx.xxx.xxx
、転送先ターゲットグループ名
を指定 - 上記の
固定レスポンスを返す
を指定
確認のため、社内からはメンテナンス画面を表示しないようにするには優先順位1として送信元IPを社内のIPにして、転送先をターゲットグループ名と固定レスポンスを返すようにすれば、外からはメンテナンス画面、社内からは問題なくサービスが閲覧可能となります。
■まとめ
メンテ用のインスタンスやらCloudfrontやらS3使って切り替えてましたが、今までのやり方は何だったのだろうか…と思うくらい簡単か!!!
0件のコメント