コンテンツにスキップ

Drupalを使用したHTMLのキャッシュ

概要

Cloudflareを使用してDrupalで、Cache Everything ページルールBypass Cache on Cookieを有効にすることで、非アクティブユーザーのHTMLをキャッシュし、いいね、画像、スクリプト、スタイルシートなどの静的コンテンツをキャッシュできます。


ブラウザキャッシュTTLの有効化

ブラウザキャッシュの衝突を避けるために、まずCloudflareダッシュボードでBypass Cache on Cookieを有効にする必要があります。これを行うには、

1. Cloudflareアカウントにログインします。

2. Cachingアプリをクリックします。

3. Browser Cache TTLまでスクロールし、Respect Existing Headersを選択します。

これで、Cloudflare ページルールを使用してBypass Cache on Cookie設定を構成できます。


Bypass Cache on Cookieの設定

Bypass Cache on Cookieページルールが設定した基準に一致すると、Cloudflareは静的画像やその他のファイルをキャッシュし、HTMLはキャッシュしません。ページルールを使用してBypass Cache on Cookieを構成するには、

1. Cloudflareアカウントにログインします。

2. Rules > Page Rulesに移動します。

3. Create Page Ruleボタンをクリックし、ドメインを入力します。以下の例では、ドメインはwww.orangeclouded.comです。

4. ページルールの設定を次のように構成します:

  • Drupalインストールパスに* * *ワイルドカードオペレーターを使用して、ドメイン全体に一致させる
  • Cache LevelをCache Everythingに設定する
  • テキストとして、Drupal変数のためにBypass Cache on Cookieルールを設定します。このルールは、ユーザーがDrupalにログインしているときにCache Everythingルールを上書きします
  • Cloudflareキャッシュサーバーがキャッシュファイルをどのくらいの期間保存するかを決定するために、Edge Cache TTL設定を設定します。

Drupalサイトで追加のクッキーを使用している場合は、これらがRegexステートメントに含まれていることを確認する必要があります:SESS.*|phpsessid=.*

Cache LevelがCache Everythingに設定され、Bypass Cache on CookieがDrupal変数に設定され、Edge Cache TTLが1か月に設定されたページルール作成ダイアログ。

これで、Cloudflareがキャッシュファイルを提供しているとき、レスポンスヘッダーCf-Cache-Status: HITがブラウザに返されます。


関連リソース