【最新機種】GoPro hero11 Black
最新機種でVlogの思い出を撮影しよう!
[ノースフェイス] THE NORTH FACE メンズ アウター マウンテンライトジャケット
防水暴風で耐久性抜群なので旅行で大活躍です!
レッドブル エナジードリンク 250ml×24本
翼を授けよう!
モンスターエナジー 355ml×24本 [エナジードリンク]
脳を活性化させるにはこれ!
Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK
メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!
MOFT X 【新型 ミニマム版】 iPhone対応 スマホスタンド
Amazon一番人気のスマホスタンド!カード類も収納出来てかさ張らないのでオススメです!
サンディスク microSD 128GB
スマホからSwitchまで使える大容量MicroSDカード!
スポンサーリンク
おさらい
CloudFrontの自動Invalidateまで
前回までの記事では、StaticPressでHTML化し、
StaticPressS3でS3バケットに転送し、
CloudFrontとRoute53を使って独自ドメインでアクセスし、
サイトをSSL化し、
AWSのLambda関数を利用したStaticPressS3での転送時に自動でCloudFrontをInvalidateするところまで設定しました。
不要なファイルの除去
WordPress関連の不要ファイルも転送されてしまっている
今の状態だと、Wordpressで利用するテーマファイルやプラグイン、その他不要なファイルまでS3バケットに転送されてしまっています。
転送不要なファイル
その中で以下のファイルは不要なのでStaticPressの出力対象に含めないようにしてみましょう。
ファイルパス | 説明 |
---|---|
/{year}/{month}/{day}/{post_id}/{アップロード画像名}/ | 添付ファイルページを保存するディレクトリ。 このページを直接参照する事はほぼ無いので不要。 |
/author/* | 投稿者アーカイブページを保存するディレクトリ。 今回のブログは自分一人で運営しているので、こちらのページは不要。 |
/wp-admin/* | WordPressの管理画面で使用するファイルを保存するディレクトリ。 S3側で管理画面を開くことは無いので不要。 |
/wp-content/plugins/* | WordPressのpluginを保存しているディレクトリ。 S3でpluginを動かすことは無いので不要。 |
/wp-includes/* | WordPressの様々な機能を動かすための主要なファイルを保存しているディレクトリ。 S3で運用する上では参照する箇所は無いので不要。 |
/wp-json/* | WordPressのAPIレスポンスを保存するディレクトリ。 S3側ではこの機能は使わないので不要。 |
上記を対象外にするには、複数のファイルを修正する必要があるので一つずつ紹介して行きます。
手順
作業をする前に
今回の作業では、pluginのファイルを修正するので万が一記述を間違えるとpluginが動かなくなってしまうので、バックアップ取る等してから作業をするようにお願いします。
また、pluginによっては除外するとページ側でエラーが発生する可能性があるので、お使いのpluginに合わせて除外するディレクトリを精査した上で、自己責任でお願いします。
添付ファイルページを除外
class-static_press.phpの721行目辺り
添付ファイルページを出力しないようにするには、class-static_press.phpの721行目辺りを以下のように修正する必要があります。
class-static_press.phpの643行目辺り
authorを出力しないようにするには、class-static_press.phpの643行目辺りを以下のように修正する必要があります。
plugins.phpの末尾
次に、pluginsの末尾に以下を追記してください。
wp-admin、wp-includesを除外
class-static_press.phpの863行目辺り
wp-admin及びwp-includesを出力しないようにするには、class-static_press.phpの863行目辺りを以下のように修正する必要があります。
wp-content/pluginsと/wp-json/を除外
plugins.phpの末尾
authorの除外で追加した関数を以下のように修正してください。
確認
では、一度S3バケットと出力ディレクトリを削除した上で再構築を実行してみましょう。
正常に転送から除外されるようになりましたね♪
終わりに
以上のように、AWSのLambda関数を利用する事でCloudFrontを使っていてもコンテンツの即時反映がされるようになりました。
これで記事を書いて転送することだけに集中出来るので、どんどんコンテンツを増やしてPV増加を狙ってみてください♪