Drupalを使用したHTMLのキャッシュ
Cloudflareを使用してDrupalで、Cache Everything ページルールとBypass Cache on Cookieを有効にすることで、非アクティブユーザーのHTMLをキャッシュ ↗し、いいね、画像、スクリプト、スタイルシートなどの静的コンテンツをキャッシュできます。
ブラウザキャッシュの衝突を避けるために、まず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ページルールが設定した基準に一致すると、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=.*

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