LoginSignup
2
0

More than 3 years have passed since last update.

S3の画像をCloudFrontを使ってWordpressに配信する

Posted at

以前の記事で、Wordpressの画像をS3に移行しました。

これでWordpressの移行や、静的サイトジェネレータへの移行ができると思っていたのですが、s3に画像を移行して数日で、s3の無料枠である20000requests/monthをあっという間に超えてしまうと思ったので、CloudFront(CDN)で配信することにしました。
※s3のpostは、2000req/monthです。移行画像数が多すぎると2000を超えてしまいますが、これは仕方ありません。

参考にした記事は、こちらです。

s3のアクセス権を確認する

S3のBlock public accessがすべてoffになっていることを確認します。

cloudfrontを作成する

参考にした記事通りに、cloudfrontを作成します。

Screen Shot 2020-08-16 at 11.42.34.png
cloudfront作成画面で、s3バケット名を選択する

Screen Shot 2020-08-16 at 11.42.42.png
redirect HTTP to HTTPSを選択

Screen Shot 2020-08-16 at 11.43.06.png
画像を圧縮したい場合は、compress objects automaticallyをyesにする。

Screen Shot 2020-08-16 at 11.44.02.png
Create Distributionをクリックして作成。

Screen Shot 2020-08-16 at 11.47.42.png
statusがDeployedになれば作成完了。

僕はサブドメインは設定しませんでしたが、設定したい方は、CNAME設定にサブドメインに置き換えてください。

wordpressでcroudfrontURLを設定する

Screen Shot 2020-08-16 at 11.50.14.png
WP Offload Media LiteプラグインのProvideのchangeをクリック。

Screen Shot 2020-08-16 at 11.50.22.png
croudfrontを選択。

Screen Shot 2020-08-16 at 11.51.03.png
croudfront画面から、CNAMEURLをコピーして貼り付ける。

Screen Shot 2020-08-16 at 11.51.17.png
Force HTTPSをONにする。

以上で設定完了です。

画像URLをcroudfrontのCNAMEURLに変更して、画像が表示されるか確認してみましょう。

記事内URLを置き換える

search regexプラグインで記事のURLをCNAMEURLに置き換えます。

サイト全体の画像URLを変更しておく

メディアライブラリなどは、まだサーバ画像URLになっているので、これをcroudfrontのCNAMEURLに変更しておきます。

https://your-domain-name/wp-admin/options.phpにアクセスしてください。

command+Fでupload_url_pathを検索します。

Screen Shot 2020-08-16 at 13.04.32.png

upload_url_pathフォームにcroudfrontのCNAMEURLを入力します。

これで、メディアライブラリなどの画像URLもすべてcroudfrontから画像が配信されるようになるはずです。
※これを設定すれば、記事内のURLもすべて変更されるかもしれません。置き換える前に試してみてください。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0