

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 付録 B: 静的コンテンツ設定
<a name="appendix-b-plugins-installation-and-configuration"></a>

 デフォルトでは、 はすべてウェブサーバーにローカルに WordPress 保存されます。ウェブサーバーは、単一サーバーデプロイ の場合はブロックストレージ (Amazon EBS）、[エラスティックデプロイ](elastic-deployment.md) の場合はファイルストレージ (Amazon EFS) です。 [シンプルなデプロイ](simple-deployment.md)ストレージとデータ転送コストを削減するだけでなく、静的アセットを Amazon S3 に移行すると、スケーラビリティ、データの可用性、セキュリティ、パフォーマンスも向上します。

 この例では、W3 Total Cache (W3TC) プラグインを使用して Amazon S3 に静的アセットを保存します。ただし、同様の機能を持つ他のプラグインもあります。代替手段を使用する場合は、それに応じて次のステップを調整できます。ステップは、この例に関連する機能または設定のみを参照します。すべての設定の詳細な説明は、本書の範囲外です。詳細については、[wordpress.org](https://wordpress.org/) の [W3 Total Cache プラグインページ](https://wordpress.org/plugins/w3-total-cache/)を参照してください。

# ユーザーの作成
<a name="user-creation"></a>

Amazon S3 に静的アセットを保存するには、 WordPress プラグインのユーザーを作成する必要があります。ステップについては、[AWSアカウント でのユーザーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html)を参照してください。

 **注：** ロールはAWSリソースへのアクセスを管理するより良い方法を提供しますが、書き込み時には W3 Total Cache プラグインは[ロール ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)をサポートしていません。

 ユーザーセキュリティ認証情報を書き留めて安全な方法で保存します。後でこれらの認証情報が必要です。

# Amazon S3 バケット作成
<a name="amazon-s3-bucket-creation"></a>

1.  まず、選択したAWSリージョンに Amazon S3 バケットを作成します。ステップについては、[「バケットの作成](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html)」を参照してください。[チュートリアル: Amazon S3 での静的ウェブサイトの設定に従って、バケットの静的ウェブサイト](https://docs.aws.amazon.com/AmazonS3/latest/dev/HowDoIWebsiteConfiguration.html)ホスティングを有効にします。

1.  以前に作成したユーザーに指定された S3 バケットへのアクセスを提供するポリシーを作成し、そのポリシーをユーザーにアタッチします。次のポリシーを作成する手順については、[「ポリシーの管理](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html)」を参照してください。

   ```
   {
   "Version": "2012-10-17",
   "Statement": [
         {
                   "Sid": "Stmt1389783689000",
                   "Effect": "Allow",
                   "Principal": "*",
                   "Action": [
                          "s3:DeleteObject",
                          "s3:GetObject",
                          "s3:GetObjectAcl",
                          "s3:ListBucket",
                          "s3:PutObject",
                          "s3:PutObjectAcl"
                   ],
                   "Resource": [
                          "arn:aws:s3:::wp-demo",
                          "arn:aws:s3:::wp-demo/*"
                   ]
            }
      ]
   }
   ```

1.  WordPress 管理パネルから W3TC プラグインをインストールしてアクティブ化します。

1. プラグインの設定の**全般設定**セクションを参照し、**ブラウザキャッシュと **の両方**CDN**が有効になっていることを確認します。

1. CDN 設定のドロップダウンリストから、**オリジンプッシュ: Amazon CloudFront** (このオプションでは Amazon S3 をオリジンとして指定します) を選択します。

1.  プラグインの設定のブラウザキャッシュセクションを参照し、**有効期限が切れる **、**キャッシュコントロール **、**エンティティタグ (ETag）** ヘッダーを有効にします。

1. また、**設定変更後のオブジェクトのキャッシュの防止**オプションを有効にして、設定が変更されるたびに新しいクエリ文字列が生成され、オブジェクトに追加されるようにします。

1.  プラグインの設定CDNのセクションを参照して、以前に作成したユーザーのセキュリティ認証情報と S3 バケットの名前を入力します。

1. 経由でウェブサイトを提供している場合は CloudFront URL、関連するボックスにディストリビューションドメイン名を入力します。それ以外の場合は、カスタムドメイン名 (複数可) CNAMEs に 1 つ以上を入力します。

1.  最後に、メディアライブラリをエクスポートし、wp-includes、テーマファイル、カスタムファイルを W3TC プラグインを使用して Amazon S3 にアップロードします。これらのアップロード関数は、**CDN**設定ページの**全般**セクションで使用できます。

# 静的オリジンの作成
<a name="static-origin-creation"></a>

 静的ファイルが Amazon S3 に保存されました。 CloudFront コンソール CloudFront の設定に戻り、静的コンテンツのオリジンとして Amazon S3 を設定します。これを行うには、その目的のために作成した S3 バケットを指す 2 番目のオリジンを追加します。次に、動的コンテンツのデフォルトのオリジンではなく S3 オリジンを使用する必要がある 2 つのフォルダ (`wp-content` と `wp-includes`) ごとに 1 つずつ、さらに 2 つのキャッシュ動作を作成します。両方を同じ方法で設定します。
+  HTTP GET リクエストのみを提供します。
+  Amazon S3 は Cookie やHTTPヘッダーに基づいて出力を変更しないため、 経由でオリジンに転送しないことでキャッシュ効率を向上させることができます CloudFront。
+  これらの動作は静的コンテンツ (パラメータを受け入れない) のみを提供するという事実にもかかわらず、クエリ文字列をオリジンに転送します。これは、クエリ文字列をバージョン識別子として使用して、新しいバージョンをデプロイするときに古いCSSファイルなど、すぐに無効化できるようにするためです。詳細については、[「Amazon CloudFront デベロッパーガイド](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ReplacingObjects.html)」を参照してください。

**注記**  
静的オリジン動作を CloudFront ディストリビューションに追加したら、 の動作`wp-admin/*`と静的コンテンツの動作よりも優先順位`wp-login.php`が高いことを確認する順序を確認します。それ以外の場合、管理者パネルにアクセスすると異常な動作が表示されることがあります。