🗂
WordPressをBunnyCDNを利用し公開する
初めまして。黒猫ちゃんです。
本記事は、BunnyCDN 利用時に WordPress の管理画面や管理バーがキャッシュされてしまう問題への対処を、実運用目線で簡潔にまとめたものです。
※本記事にはアフィリエイトリンクが含まれています
1. なぜ WordPress で CDN を使うのか
WordPress は動的 CMS であり、キャッシュがないと TTFB/描画が遅延しがちです。CDN を併用して静的化・配信をエッジに寄せることで、表示速度の改善とオリジンサーバ負荷の削減を両立できます。
2. BunnyCDN とは
BunnyCDN は BunnyWay d.o.o. が提供する 低コスト・高可用性の CDNサービス です。サポートの応答が速く、私が運営する KuronekoServer でも採用しています。
3. Pull Zone の作成
今回の設定例ではレンタルサーバ上の WordPress を想定します。
-
Pull Zone を作成
Delivery->CDN->Add Pull Zone
- Pull Zone Nameは自由です。管理しやすい名前をお勧めします。
- Origin typeのOrigin URLにcoreserverの場合だと
https://v20xx.coreserver.jpの各契約しているレンタルサーバーのアドレスを入れてください。 - Host headerにはレンタルサーバーで登録しているドメインで表示したいドメインを入れてください。
-
キャッシュ期間を設定
Caching->Generalページ
例: CDN 3 ヶ月, ブラウザ 1 ヶ月
4. WordPress 向けキャッシュ制御(BunnyCDN エッジルール)
通常閲覧者はページをキャッシュしたものを表示しつつ、管理者ページはキャッシュから除外し表示します。
Edge rulesに移動->Add Edge Ruleページ
Actions
-
Override Cache Time:0 -
Override Browser Cache Time:0
Cookie ベース(ログイン中ユーザー)
- 条件: Request Header (Match any)
- Header Name:
Cookie - 値:
*wordpress_logged_in*
パスベース(任意)
- 条件: Request URL (Match any):
*/wp-admin/*,*.php,*/preview/*(必要に応じて)
アクション: 上記条件にヒットした場合は 「Bypass cache(Do not cache)」 を適用。
画像の例:
これで、ログイン中のユーザーや管理系のアクセスは CDN キャッシュをBypassし、一般閲覧者にはキャッシュ済みページが返却されるようになります。
最後に
私は、KuronekoServerという団体を運営しており、様々なサービスを運用しています。
良かったらDiscord読み上げBOT等利用してみてほしいです。 👀


Discussion