📝
[小ネタ] ALB の固定レスポンスで JavaScript を実行してみた
Application Load Balancer のリスナー - エラスティックロードバランシング
クライアントリクエストを破棄し、カスタムの HTTP レスポンスを返すには、fixed-response アクションを使用します。
今回はコンテンツタイプ text/html で JavaScript を実行してみました。
やってみた
デフォルト設定で ALB を作成済みです。
デフォルトの HTTP:80 のリスナーを編集します。
以下の設定に変更して保存します。
- デフォルトアクション: 固定レスポンスを返す
- レスポンスコード: 200
- コンテンツタイプ: text/html
- レスポンス本文: 以下の html を入力
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
test
<br />
<script>
console.log("test");
document.write(new Date());
</script>
</body>
</html>
ブラウザから ALB のデフォルトの DNS 名でアクセスします。
html 内の JavaScript が実行されていることを確認できました。
ユースケースとしては固定レスポンスで少しだけ動的なことを実装したい場合が考えられます。
ただし、本文は 1,024 文字までという制限があるので簡単な処理の実装のみになると思われます。
FixedResponseActionConfig - Elastic Load Balancing
MessageBody
The message.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 1024.
まとめ
今回は ALB の固定レスポンスで JavaScript を実行してみました。
どなたかの参考になれば幸いです。
Discussion