素敵なサムシングを独断と偏見で一方的に紹介するブログ(´・ω・`)

IT

【ゴミファイルを減らす】StaticPressで不要ファイルをS3バケットに転送しないようにしてみよう

投稿日:

スポンサーリンク

336×280




おさらい

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行目辺りを以下のように修正する必要があります。

authorを除外

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増加を狙ってみてください♪

336×280




336×280




CATEGORIES & TAGS

IT, , , , , , , , , , ,

blogenist

Author: blogenist