‹ ハウツー に戻る

チュートリアル:Lightsail コンテンツ配信ネットワークディストリビューションでの Amazon Lightsail バケットの使用

最終更新日: 2021 年 7 月 14 日

このチュートリアルでは、Amazon Lightsail バケットを Lightsail コンテンツ配信ネットワーク(CDN) 配信のオリジンとして設定するために必要な手順を説明します。また、バケットにメディア(イメージや動画ファイルなど)をアップロードして保存し、ディストリビューションからメディアを配信するために WordPress ウェブサイトに設定する方法も説明します。その方法の一例として、「WP Offload Media Lite プラグイン」があります。次の図にその概念を示します。

ウェブサイトメディアを Lightsail バケットに保存すると、これらのファイルを保存して提供する必要がなくなり、インスタンスの負荷が軽減されます。Lightsail ディストリビューションからメディアをキャッシュし、提供すると、ウェブサイトの訪問者へのファイルの配信が高速化され、ウェブサイト全体のパフォーマンスが向上します。ディストリビューションの詳細については、「Amazon Lightsail の コンテンツ配信ネットワークディストリビューション」を参照してください。バケットについての詳細は、「Amazon Lightsail のオブジェクトストレージ」を参照してください。

目次

ステップ 1: 前提条件を満たす

以下の前提条件を完了します (まだの場合)。

ステップ 2: バケットのアクセス許可を変更する

次の手順を実行して、WordPress インスタンスと WP Offload Media Lite プラグインにバケットへのアクセスを許可します。バケットのアクセス許可は個々のオブジェクトを公開(読み取り専用)に設定する必要があります。また、WordPress インスタンスをバケットに添付する必要があります。バケットのアクセス許可のオプションの詳細については、「Amazon Lightsail のバケットのアクセス許可について」を参照してください。

  1. Lightsail コンソール にサインインします。

  2. Lightsail のホームページで [Storage] (ストレージ) タブを選択します。

  3. WordPress ウェブサイトで使用するバケットの名前を選択します。

  4. バケット管理ページで [Permissions] (許可) タブを選択します。

  5. ページの「バケットのアクセス許可」セクションで [Change permissions ](許可の変更) を選択します。

  6. 個々のオブジェクトを選択して公開し、読み取り専用にすることができます

  7. [保存] を選択します。

  8. 表示される確認プロンプトで、[はい、選択]を選択します。

    しばらくすると、バケットは個々のオブジェクトにアクセスを許可するように設定されます。これにより、Offload Media Lite プラグインを使用して、WordPress ウェブサイトからバケットにアップロードされたオブジェクトをユーザーが読み取れるようになります。

  9. ページの [リソースアクセス] セクションまでスクロールし、[Attach instance] (インスタンスの添付) を選択します。

  10. 表示されるドロップダウンで WordPress インスタンスの名前を選択し、[添付]を選択します。

    しばらくすると、WordPress インスタンスがバケットに添付されます。これにより、WordPress インスタンスにアクセスして、バケットとそのオブジェクトを管理するアクセス権が与えられます。

ステップ 3: オリジンとしてのバケットを持つディストリビューションを作成する

以下の手順に従って、Lightsail ディストリビューションを作成し、選択し、オリジンとしてLightsail バケットを選択します。

  1. Lightsail コンソールの上部のナビゲーション メニューで [ホーム] を選択します。

  2. Lightsail のホームページで、[ネットワーキング] タブを選択します。

  3. [ディストリビューションの作成] を選択します。

  4. ページの [オリジンの選択] セクションで、バケットを作成した AWS リージョンを選択します。

    ディストリビューションはグローバルリソースです。どの AWS リージョンでもバケットを参照して、グローバルにそのコンテンツを配布することができます。

  5. バケットをオリジンとして選択します。

    注意

    バケットのアクセス許可は個々のオブジェクトを公開(読み取り専用)に設定する必要があります。公開として設定されている個々のオブジェクトだけがキャッシュされ、ディストリビューションで配信されます。ディストリビューションのオリジンとしてバケットを選択すると、オリジンプロトコルポリシー、キャッシュ動作、デフォルトの動作、ディレクトリとファイルの上書きを指定するオプションが使用できなくなり、編集もできなくなります。オリジンプロトコルポリシーのデフォルトはバケットに対してのみ [HTTPS Only] に設定され、キャッシュ動作のデフォルトは [すべてをキャッシュする] です。ディストリビューションのアドバンストキャッシュ設定は、ディストリビューションの作成後に変更できます。

  6. ディストリビューションプランを選択します。

  7. ディストリビューションの名前を入力します。

    ディストリビューション名:

    • Lightsail アカウントの各 AWS リージョン で一意であることが必要です。

    • 2~255 文字を使用する必要があります。

    • 先頭と末尾は英数字または数字を使用する必要があります。

    • 英数字、数字、ピリオド、ダッシュ、アンダースコアを使用することができます。

  8. [ディストリビューションの作成] を選択します。

    しばらくすると、ディストリビューションが作成されます。新しいディストリビューションが [Enabled] (有効) になると、バケット内のオブジェクトを提供してキャッシュする準備が整った状態です。

ステップ 4: ディストリビューションのカスタムサブドメインを有効にする

ディストリビューションを作成すると、123abc.cloudfront.net と同様のデフォルトドメインで構成されます。WP Offload Media Lite プラグインを設定するときに、そのデフォルトドメインをメディアファイルのソースとして指定することができます。ただし、ディストリビューションのカスタムドメインを有効にすることを強くお勧めします。ディストリビューション用に有効にするカスタムドメインは、WordPress ウェブ サイトで使用しているドメインのサブドメインである必要があります。たとえば、使用しているmycustomdomain.comを WordPress のウェブサイトに追加すると、ディストリビューションでカスタムドメイン media.mycustomdomain.com を使用することを選択できます。WordPress ウェブサイトとディストリビューションの間で同じドメインとサブドメインの組み合わせを使用すると、ウェブサイトの検索エンジン最適化スコアを向上させるのに役立ちます。

ディストリビューション用のカスタムドメインを設定するには、以下のステップを実行します。

  1. ディストリビューションで使用するために、Lightsail ドメインの Lightsail SSL/TLS証明書を作成してください。ディストリビューションには HTTPS が必要なため、ディストリビューションで使用する前に、ドメインの SSL/TLS 証明書をリクエストする必要があります。詳細については、「Amazon Lightsail でディストリビューション用の SSL/TLS 証明書を作成する」を参照してください。

  2. ディストリビューションでカスタムドメインを有効にして、ディストリビューションでドメインを使用できるようにします。カスタムドメインを有効にするには、ドメイン用に作成した Lightsail SSL/TLS 証明書を指定することが必要です。これにより、ドメインがディストリビューションに追加され、HTTPS が有効になります。詳細については、「Amazon Lightsail ディストリビューション用のカスタムドメインの有効化」を参照してください。

  3. ドメインの DNS ゾーンにエイリアス レコードを追加 エイリアスレコードを追加すると、ドメインにアクセスするユーザーはディストリビューションを通じてルーティングされます。詳細については、「Amazon Lightsail ドメインをディストリビューションにポイントする」を参照してください。

ステップ 5: WordPress ウェブサイトに WP Offload Media プラグインをインストールします。

次のステップに従って、WordPress ウェブサイトに WP Offload Media Lite プラグインをインストールします。このプラグインは、WordPressのメディアアップローダーを介して追加されたイメージ、ビデオ、ドキュメント、およびその他のメディアを Lightsail バケットに自動的にコピーします。また、バケットから Lightsail ディストリビューションを通じてメディアを提供するように設定することもできます。詳細については、WordPress ウェブサイトの「WP Offload Media Lite」を参照してください。

  1. 管理者として WordPress ウェブサイトのダッシュボードにサインインします。

    詳細については、「Amazon Lightsail の "Certified by Bitnami" インスタンスのアプリケーションのユーザー名とパスワードを取得する」を参照してください。

  2. 左側のナビゲーションメニューの [プラグイン] を一時停止し、[Add New] (新規追加) を選択します。

  3. [WP Offload Media Lite] を検索します。

  4. 検索結果で、[WP Offload MediaLite] プラグインの横にある [Install Now] (今すぐインストール) を選択します。

  5. プラグインのインストールが完了したら、[アクティベート] を選択します。

  6. 左ナビゲーションメニューで、[設定]、[Offload Media] の順に選択します。

  7. [Offload Media Lite] ページで、ストレージプロバイダーとして [Amazon S3] を選択します。

  8. [私のサーバーは Amazon Web Services 上にあり、IAM ロールを使用したい] を選択します。

  9. [Next (次へ)] を選択します。

  10. [どのバケットを使用しますか?] と表示される画面で、[Browse existing buckets‬] (既存のバケットを参照する) を選択します。

  11. WordPress インスタンスで使用するために作成したバケットの名前を選択します。

  12. 表示される [Offload Media Lite] 設定画面で、[Force HTTPS] (HTTPS の強制実行) と [Remove Files From Server](サーバーからファイルの削除) をオンにします。

    • Lightsail バケットは、デフォルトで HTTPS を使用してメディアファイルを提供するため、[Force HTTPS] 設定をオンにする必要があります。この機能がオンになっていないと、WordPressのウェブサイトから Lightsail バケットにアップロードされたメディアファイルが、ウェブサイトの訪問者に正しく提供されません。

      [Remove Files From Server] は、Lightsail バケットにアップロードされたメディアがインスタンスのディスクにも保存されないようにする設定です。この機能をオンにしていない場合、Lightsail バケットにアップロードされたメディアファイルは、WordPress インスタンスのローカルストレージにも保存されます。

  13. ページの [Delivery] セクションで、Amazon S3 ラベルの横にある [変更] を選択します。

  14. 表示された [メディアをどのように配信したいですか] ページで、[Amazon CloudFront] を選択します。

  15. 配信プロバイダを保存を選択。

  16. 表示される [Offload Media Lite 設定] 画面で、[カスタムドメイン(CNAME)]をオンにします。次に、Lightsail ディストリビューションのドメインをテキストボックスに入力します。これは、ディストリビューションのデフォルトドメイン(例:123abc.cloudfront.net)や、ディストリビューションのカスタムドメイン(例:media.mycustomdomain.com )有効にしている場合は、そのドメインになります。

  17. [Save Changes] を選択します。

    注意

    後で [Offload Media Lite 設定] ページに戻るには、左のナビゲーション メニューで [設定] を一時停止し、[Offload Media] を選択します。

    これで、WordPress ウェブサイトは Media Lite プラグインを使用できるように設定されました。次回 WordPress を使用してメディアファイルをアップロードすると、そのファイルは自動的に Lightsail バケットにアップロードされ、ディストリビューションによって提供されます。設定をテストするには、このチュートリアルの次のセクションに進みます。

ステップ 6: WordPress ウェブサイトとLightsail バケットとディストリビューションの接続をテストします。

次の手順を実行して、WordPress インスタンスにメディアファイルをアップロードし、それが Lightsail バケットにアップロードされ、ディストリビューションから提供されることを確認します。

  1. WordPress ダッシュボードの左側のナビゲーションメニューで [メディア] を一時停止し、[新規追加]を選択します。

  2. 表示される [新しいメディアのアップロード] ページで [ファイルを選択] を選択します。

  3. ローカルコンピュータからアップロードするメディアファイルを選択し、[開く] を選択します。

  4. ファイルのアップロードが完了したら、左のナビゲーションメニューにある [メディア] の [ライブラリ] を選択します。

  5. 最近アップロードしたファイルを選択します。

  6. ファイルの詳細パネルで、[バケット] フィールドにバケットの名前が表示されます。[ファイルの URL」フィールドには、ディストリビューションの URL が表示されます。

  7. Lightsail バケット管理ページの [オブジェクト] タブに移動すると、[wp-content] フォルダが表示されます。このフォルダは、Offload Media Lite プラグインによって作成され、アップロードしたメディアファイルを保存するために使用されます。

Lightsail でのバケットとオブジェクトの管理

Lightsail オブジェクトストレージバケットを管理するための一般的なステップは次のとおりです。

  1. Amazon Lightsail オブジェクトストレージサービスのオブジェクトとバケットについて説明します。詳細については、「Amazon Lightsail のオブジェクトストレージ」を参照してください。

  2. Amazon Lightsail でバケットに付けることができる名前について説明します。詳細については、「Amazon Lightsail のバケットの命名規則」を参照してください。

  3. バケットを作成することにより、Lightsail オブジェクトストレージサービスの使用を開始します。詳細については、「Amazon Lightsail でのバケットの作成」を参照してください。

  4. バケットのセキュリティに関するベストプラクティスと、バケットに対して設定できるアクセス許可について説明します。バケットのすべてのオブジェクトをパブリックまたはプライベートにすることも、個別のオブジェクトをパブリックにすることもできます。また、アクセスキーを作成し、バケットにインスタンスをアタッチし、他の AWS アカウントへのアクセスを許可して、バケットへのアクセスを許可することもできます。詳細については、「Amazon Lightsail オブジェクトストレージのセキュリティのベストプラクティス」と「Amazon Lightsail のバケットアクセス許可について」を参照してください。

    バケットのアクセス許可について学習したら、次のガイドを参照してバケットへのアクセスを許可します。

  5. バケットのアクセスログ記録を有効にする方法と、アクセスログを使用してバケットのセキュリティを監査する方法について説明します。詳細については、以下のガイドを参照してください。

  6. Lightsail のバケットの管理をユーザーに許可する IAM ポリシーを作成します。詳細については、「Amazon Lightsail のバケットを管理する IAM ポリシー」を参照してください。

  7. バケットのオブジェクトのラベル付けと識別方法について説明します。詳細については、「Amazon Lightsail のオブジェクトのキー名について」を参照してください。

  8. バケットでファイルをアップロードする方法と、オブジェクトを管理する方法について説明します。詳細については、以下のガイドを参照してください。

  9. オブジェクトのバージョニングを有効にして、バケットに保存されたあらゆるオブジェクトのあらゆるバージョンを保存、取得、復元することができます。詳細については、「Amazon Lightsail のバケットでのオブジェクトのバージョニングの有効化と一時停止」を参照してください。

  10. オブジェクトのバージョニングを有効にすると、バケットのオブジェクトの以前のバージョンを復元できるようになります。詳細については、「Amazon Lightsail のバケットのオブジェクトの以前のバージョンの復元」を参照してください。

  11. バケットの使用率をモニタリングします。詳細については、「Amazon Lightsail のバケットのメトリクスの表示」を参照してください。

  12. バケットの使用率がしきい値を超えたときにバケットメトリクスが通知されるようにアラームを設定します。詳細については、「Amazon Lightsail のバケットメトリクスアラームの作成」を参照してください。

  13. ストレージおよびネットワーク転送で不足している場合は、バケットのストレージプランを変更します。詳細については、「Amazon Lightsail のバケットのプランを変更する」を参照してください。

  14. バケットを他のリソースに接続する方法について説明します。詳細については、以下のチュートリアルを参照してください。

  15. バケットを使用しなくなった場合は、バケットを削除します。詳細については、「Amazon Lightsail のバケットの削除」を参照してください。