いいえ。Edge Cache TTL ページルールを作成する必要はありません。WordPress プラグインをインストールすると、APO はコンテンツを 30 日間自動でキャッシュし、変更から 30 秒以内に無効化します。ただし、APO はキャッシュ関連のページルールに対応しているため、既存のページルールが APO が配信するリソースに影響しないことを確認してください。
いいえ。APO はエッジでのキャッシュについて Origin Cache Control を無視しますが、クライアントには元の Origin Cache Control を返します。
Browser Cache TTL を Respect Existing Headers にしていると、APO 使用時にブラウザーの cache-control ヘッダーがなくなることがあります。例:
curl --silent --verbose --output /dev/null https://example.com/ --header 'Accept: text/html' 2>&1 | grep cache-control< cache-control: max-age=86400, stale-while-revalidate=86400, stale-if-error=86400いいえ。この機能は APO に組み込まれているため、stale-if-error ディレクティブは不要です。
Chrome DevTools を開いていると、Chrome はデフォルトで Cache-Control: no-cache を送ります。Disable cache (while DevTools is open) のチェックを外すと、cf-cache-status: HIT と cf-apo-via: cache ヘッダーが返されます。
cURL で cf-cache-status を確認すると、常に MISS と DYNAMIC が返ります。ブラウザーでは HIT なのに、ほかのツールでは DYNAMIC です。想定どおりの動作ですか?
APO は、リクエストの Accept ヘッダーと URL パスに基づき、HTML キャッシュの対象かどうかを決めます。
Acceptヘッダーにtext/htmlが含まれる(品質値が 0 より大きい)場合、リクエストは HTML リクエストとして扱われ、キャッシュ対象になります。Acceptヘッダーが HTML を明示的に拒否する(Accept: text/html; q=0)場合、リクエストは HTML としてキャッシュされません。Acceptヘッダーにtext/htmlがない場合(Accept: */*やAcceptヘッダーなしを含む)、APO は代わりに URL パスを評価します。静的でないパス(ページや投稿など)へのリクエストは HTML キャッシュの対象のままです。静的ファイル拡張子へのリクエストは対象外です。
一部のテストツールは Accept ヘッダーを送りません。これらのリクエストでは、上記のとおり APO は URL パスを使うため、キャッシュ結果はリクエストパスとその他の対象条件に依存します。ブラウザーに近い HTML リクエストを確実に再現するには、cURL コマンドに -H 'accept: text/html' を含めます。
はい。APO を有効にすると Google Fonts も最適化されます。フォント URL を確認すると最適化を確認できます。たとえば、サイト読み込み時に URL は https://fonts.gstatic.com/s/... から https://example.com/fonts.gstatic.com/s/... に変わります。プロキシされたフォントでは、cf-apo-via:proxy ヘッダーが返されます。
クエリパラメーターの詳細は クエリパラメーターとキャッシュされた応答 を参照してください。
content-security-policy 応答ヘッダーがあるが、下記の値が欠けている場合、APO はフォント URL の変換をスキップします。
問題を直すには、content-security-policy ヘッダー値が、style-src または default-src ディレクティブで unsafe-inline を許可する必要があります。例: Content-Security-Policy: style-src unsafe-inline;
ヘッダーは、font-src または default-src ディレクティブで self を許可する必要があります。例: Content-Security-Policy: font-src self;
APO はコンテンツ配信の最適化に Cloudflare Workers を内部で使うため、Worker のサブリクエストが発生します。これらのサブリクエストは、ゾーンログ(Logpush など)に表示されることがあります。
APO プラグインで「This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.」と表示されるのはなぜですか?
成熟したプラグインでは、WordPress の未テスト警告が出るまでの期間より長く更新がないことは珍しくありません。この警告は通知目的であり、プラグインが動かなくなったことを示すものではありません。プラグインは引き続き保守されています。