仮想サービスには、仮想ホスティングのサポートを有効にする構成オプションがあります。仮想サービス内でこのオプションを有効にすると、仮想サービスがサーバ名インディケーション (SNI) 展開内の別のサービスの親または子であることが示されます。

クライアントと親仮想サービス間の SSL ハンドシェイク中に、親仮想サービスは子仮想サービスのドメイン名をチェックし、クライアントのハンドシェイクでドメイン名と一致するかどうか確認します。一致する場合、親仮想サービスは、一致するドメイン名を持つ子仮想サービスにクライアント要求を渡します。ワイルドカードを使用して、ドメイン名の先頭または末尾に一致させることができます。

ワイルドカード

子仮想サービスの構成内では、ドメイン名の先頭または末尾にワイルドカード文字を使用できます。

  • *.example.com - ドメイン名の残りの部分が一致する場合、ドメイン名の先頭にあるラベルに一致します。この例は、mail.example.com、app1.example.com、app1.test.example.com、app1.test.b.example.com、any.set.of.labels.in.front.of.example.com などに一致します。

  • .example.com - 先頭のラベルのセットに一致するか、先頭のラベルがない場合に一致します。この例は、*.example.com で一致するドメイン名だけでなく、「example.com」(先頭に他のラベルがない)にも一致します。

  • www.example.* - 他のラベルが一致する場合、末尾のラベルのセットに一致します。この例は、www.example.com、www.example.org、www.example.edu、www.example.edu.any.set.of.labels.after.www.example などに一致します。

ドメイン名には、表示されている位置にこれらのワイルドカード文字を含めることができます。ドメイン名内の他のラベル位置でのワイルドカードの使用はサポートされていません。同様に、同じドメイン名内で複数のワイルドカード文字を使用することはできません。

最長一致が使用される

複数の一致の場合、最も長い、最も具体的な一致が使用されます。

たとえば、親仮想サービスに次の子仮想サービスがあるとします。

  • VS1:ドメイン名 *.example.com に一致します

  • VS2:ドメイン名 *.test.example.com に一致します

サーバ証明書に「.test.example.com」で終わるドメイン名が含まれている場合、証明書は VS2 では一致しますが、VS1 では一致しません。