結論から言うとRoute53ではアンダースコアを含むホスト名は使用できますが、ElasticBeanstalkのApplicationLoadBalancer用のリスナールールにおいて、HostHeadersを使用する際、アンダースコアを含むホスト名は使用できません。
- リスナールールとは
リクエストがルールのホスト名と一致した場合、ALBはリクエストを指定したプロセスに転送します。
- ホストヘッダーとは
ホストヘッダーのホスト名に基づいてリクエストをルーティングするルールを定義できます。単一のALBを使用して複数のサブドメインおよび異なるトップレベルドメインを運用できます。
setting {
namespace = "aws:elbv2:listener:443"
name = "Rules"
value = "fqdn1,fqdn2"
}
setting {
namespace = "aws:elbv2:listenerrule:fqdn1"
name = "HostHeaders"
value = "fqdn1-test.xxxx.jp" // OK
}
setting {
namespace = "aws:elbv2:listenerrule:fqdn1"
name = "Priority"
value = "1"
}
setting {
namespace = "aws:elbv2:listenerrule:fqdn2"
name = "HostHeaders"
value = "fqdn2_test.xxxx.jp" // NG
}
setting {
namespace = "aws:elbv2:listenerrule:fqdn2"
name = "Priority"
value = "2"
}