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

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

最終更新日:Jun 21, 2026

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

主な特長

  • シームレスな移行:HTTP から HTTPS への高速でシームレスなリダイレクトにより、ユーザーは中断なくブラウジングを続けられます。

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

ユースケース

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

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

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

image

注意事項

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

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

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

前提条件

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

    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 ドメイン名> コマンドを実行します。 返された 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 へのリクエストのリダイレクト」をご参照ください。