すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:CLB を使用した HTTP から HTTPS へのリダイレクト

最終更新日:Jul 25, 2026

HTTPS は、転送中のデータを暗号化する安全なプロトコルです。 サービスを HTTPS にアップグレードした後、CLB を使用して HTTP リクエストを HTTPS にシームレスにリダイレクトできます。 このトピックでは、CLB を使用して HTTP リクエストを HTTPS にリダイレクトする方法について説明します。

主な特長

  • シームレスな移行:HTTP から HTTPS への迅速かつシームレスなリダイレクトにより、ユーザーのブラウジング体験が中断されることはありません。

  • サーバー負荷の軽減:ロードバランサーがリダイレクトを処理し、このタスクをバックエンドサーバーからオフロードします。これにより、サーバーはコアアプリケーションロジックに集中でき、効率が向上します。

ユースケース

  • HTTPS へのアップグレード:HTTP から HTTPS に移行することで、既存の Web サイトやアプリケーションを保護します。これにより、データ転送のセキュリティが強化されます。

  • ドメイン名の変更またはサイト移行:Web サイトを新しいドメインに移行する際に、リダイレクトを使用してユーザーのアクセスが中断されないようにします。

例

CLB インスタンスを購入し、HTTP リスナーを設定した企業は、データセキュリティを強化するために、ウェブサイトを HTTPS にアップグレードする必要があります。アップグレード中のサービス中断を防ぐため、この企業は CLB インスタンスを使用して HTTP リクエストを HTTPS にリダイレクトします。これにより、スムーズな移行が保証され、ビジネスデータが保護されます。

image

注意事項

  • CLB の HTTP リダイレクト機能はすべてのリージョンで利用可能です。

  • HTTP から HTTPS へのリダイレクトを設定する場合、HTTP リスナーと HTTPS リスナーは同じ CLB インスタンス上にある必要があります。

  • CLB インスタンス上の既存の HTTP リスナーでは、リスナーによるリダイレクトを有効にできません。HTTP リスナーを作成する際に、リスナーによるリダイレクトを有効にする必要があります。

  • 新しい HTTP リスナーの作成時にポートの競合が発生した場合 (たとえば、ポート 80 が既存の HTTP リスナーですでに占有されている場合)、まず既存の HTTP リスナーを削除する必要があります。リスナーを削除するには、リスナーリストに移動して既存の HTTP リスナーを選択し、ページの下部にある[削除]をクリックして削除を確定します。新しい HTTP リスナーを作成する際、詳細設定でリダイレクションを有効にし、宛先の HTTPS リスナーを選択してリダイレクト設定を完了します。

前提条件

  • バックエンドサーバーとして ECS01 と ECS02 を作成し、それぞれにアプリケーションをデプロイします。このトピックでは、サーバーは Alibaba Cloud Linux 3.2104 LTS 64 ビットオペレーティングシステムを使用します。詳細については、「ウィザードを使用したインスタンスの作成」をご参照ください。

    ECS インスタンスにテストサービスをデプロイするためのコマンド例

    ECS01 にテストアプリケーションをデプロイするためのコマンド例:

    yum install -y nginx
    systemctl start nginx.service
    cd /usr/share/nginx/html/
    echo "Hello World ! This is ECS01." > index.html

    ECS02 にテストアプリケーションをデプロイするためのコマンド例:

    yum install -y nginx
    systemctl start nginx.service
    cd /usr/share/nginx/html/
    echo "Hello World ! This is ECS02." > index.html
  • CLB インスタンスを作成します。このトピックでは、インターネット向け CLB インスタンスを例として使用します。詳細については、「CLB インスタンスの作成と管理」をご参照ください。

  • 証明書を購入するか、サードパーティの証明書を Certificate Management Service にアップロードし、ドメイン名にバインドします。詳細については、「証明書を使用して Web サイトの HTTPS を有効にする」をご参照ください。

手順

ステップ1:HTTPS リスナーの作成

  1. Classic Load Balancer コンソールにログインします。

  2. 上部メニューで、CLB インスタンスがデプロイされているリージョンを選択します。

  3. インスタンス ページで、対象のインスタンスを探し、操作 列の リスナーの設定 をクリックします。

  4. プロトコルとリスナー ステップで、リスナーを次のように設定し、次へ をクリックします。

    このトピックでは、必須パラメーターのみを説明します。他のパラメーターはデフォルト値を使用します。他のパラメーターの詳細については、「HTTPS リスナーの追加」をご参照ください。

    • [リスナープロトコルの選択]:HTTPS。

    • [リスニングポート]:443。

  5. SSL 証明書 ステップで、既存のサーバー証明書を選択するか、サーバー証明書の選択 ドロップダウンリストから サーバー証明書の作成 をクリックします。他のパラメーターはデフォルト値のままにして、次へ をクリックします。

  6. バックエンド サーバー ステップで、サーバーグループにバックエンドサーバーを追加します。このトピックでは、デフォルトサーバーグループを例に説明します。

    1. デフォルトのサーバーグループ を選択し、さらに追加 をクリックします。

    2. サーバー パネルで、ECS01 と ECS02 を選択し、次へ をクリックします。

    3. ポート/重み ステップで、ECS01 と ECS02 の重みを設定し、追加 をクリックします。

    4. ECS01 と ECS02 の両方のポートを 80 に設定し、次へ をクリックします。

  7. ヘルスチェック ステップでは、デフォルト設定を維持し、次へ をクリックします。

  8. 確定 ステップで、リスナー設定を確認して 送信 をクリックします。確認ダイアログボックスが表示されたら、OK をクリックします。

ステップ2:HTTP リスナーの転送ルールの設定

  1. リスナー タブで、リスナーの作成 をクリックします。

  2. プロトコルとリスナー ステップで、以下の情報を使用してリスナーを設定し、その他の設定はデフォルト値のままにして、次へ をクリックします。

    パラメーター

    説明

    [リスナープロトコルの選択]

    リスナーが使用するプロトコルです。

    このトピックでは、[HTTP] を選択します。

    [リスニングポート]

    リクエストを受信し、バックエンドサーバーに転送するポートです。

    このトピックでは、このパラメーターを [80] に設定します。

    [高度な設定]

    編集 をクリックして、詳細設定を展開します。

    このトピックでは、リダイレクション のみを変更します。その他のパラメーターはデフォルト値のままにします。

    [リダイレクション]

    HTTP リスナーから HTTPS リスナーへのトラフィックのリダイレクトを有効にします。

    このトピックでは、リダイレクション を有効にし、対象リスナー には、ステップ 1: HTTPS リスナーの作成 で作成した HTTPS リスナーを選択します。

  3. 確定 ページで 送信 をクリックします。設定が正常に完了したら、OK をクリックします。

リスナーによるリダイレクトを有効にすると、CLB インスタンス上の HTTP:80 へのすべてのリクエストが HTTPS:443 にリダイレクトされます。その後、リクエストは HTTPS リスナーの設定に基づいて転送されます。

ステップ3:DNS の設定

説明
  • Alibaba Cloud に登録されていないドメインの場合、DNS レコードを設定する前に、まず Alibaba Cloud DNS コンソールにドメインを追加する必要があります。

  • CLB インスタンスが内部向けインスタンスの場合、まず Elastic IP アドレス (EIP) を関連付けてから、ドメイン名を EIP にマッピングする A レコードを作成して、パブリックアクセスを有効にする必要があります。

  1. 左側のナビゲーションペインで、CLB > インスタンスを選択します。

  2. インスタンス ページで、対象のインスタンスを選択し、その IP をコピーします。

  3. 次の手順を実行して、A レコードを追加します。

    1. Alibaba Cloud DNS コンソールにログインします。

    2. インターネットの権威ある DNS 解決 ページで、目的のドメイン名を見つけ、Actions 列の 解決設定 をクリックします。

    3. 解決設定 ページで、Add Record をクリックします。

    4. Add Record パネルで、次のパラメーターを設定します。その他のパラメーターはデフォルト値のままにするか、必要に応じて変更できます。次に、OK をクリックします。

      パラメーター

      説明

      [Record Type]

      ドロップダウンリストから A を選択します。

      [Hostname]

      ドメイン名のプレフィックスです。

      説明

      ルートドメインの場合は、ホスト名を @ に設定します。

      [Record Value]

      コピーした CLB インスタンスの IP アドレスを入力します。

ステップ4:結果の確認

インターネットにアクセスできるクライアントから、CLB インスタンスへの HTTP リクエストが HTTPS にリダイレクトされるかどうかをテストします。

  1. クライアントでコマンドラインインターフェイス (CLI) を開きます。

  2. curl -v http://<CLB domain name> コマンドを実行します。302 ステータスコードが返され、CLB へのリクエストが HTTPS にリダイレクトされることを示します。

    C:\Users\admin>curl -v http://your.domain.com
    *   Trying 192.0.2.1:80...
    * Connected to your.domain.com (192.0.2.1) port 80
    > GET / HTTP/1.1
    > Host: your.domain.com
    > User-Agent: curl/8.4.0
    > Accept: */*
    >
    &lt; HTTP/1.1 302 Found
    &lt; Date: Wed, 17 Jul 2024 03:13:13 GMT
    &lt; Content-Type: text/html
    &lt; Content-Length: 154
    &lt; Connection: keep-alive
    &lt; Location: https://your.domain.com
    &lt; Via: HTTP/1.1 SLB.94
    &lt;
    &lt;html&gt;
    <head><title>302 Found</title></head>
    <body bgcolor="white">
    <center><h1>302 Found</h1></center>
    <hr><center>nginx</center>
    </body>
    </html>
    * Connection #0 to host your.domain.com left intact

リダイレクトのステータスコード

次の表では、CLB がサポートするリダイレクション ステータスコード について説明します。

ステータスコード

説明

302

一時的なリダイレクト。リソースが一時的に別の URL にあることを示します。クライアントは今後のリクエストに元の URL を使用し続ける必要があります。

よくある質問

リスナーによるリダイレクトのオプションが見つからない

CLB インスタンス上の既存の HTTP リスナーでは、リスナーによるリダイレクトを有効にできません。リスナーによるリダイレクトを有効にするには、HTTP リスナーを再作成する必要があります。

関連ドキュメント

CLB はリスナールールに基づいてトラフィックをリダイレクトします。対照的に、Application Load Balancer (ALB) はアプリケーション層でリクエストをリダイレクトするため、パスベースやヘッダーベースのリダイレクトなど、より柔軟で幅広い設定オプションを提供します。詳細については、「ALB を使用した HTTP リクエストから HTTPS へのリダイレクト」をご参照ください。