0人のフォロワー

ページキャッシング

ページキャッシングとは、ページ全体のコンテンツをサーバーサイドでキャッシュすることです。 後で同じページが再びリクエストされた場合、コンテンツは最初から再生成されるのではなく、キャッシュから提供されます。

ページキャッシングは、yii\filters\PageCacheアクションフィルタによってサポートされています。 コントローラークラスで次のように使用できます。

public function behaviors()
{
    return [
        [
            'class' => 'yii\filters\PageCache',
            'only' => ['index'],
            'duration' => 60,
            'variations' => [
                \Yii::$app->language,
            ],
            'dependency' => [
                'class' => 'yii\caching\DbDependency',
                'sql' => 'SELECT COUNT(*) FROM post',
            ],
        ],
    ];
}

上記のコードは、ページキャッシングが `index` アクションに対してのみ使用されるべきであることを示しています。 ページコンテンツは最大60秒間キャッシュされ、現在のアプリケーション言語によって変化する必要があり、投稿の総数が変更された場合、キャッシュされたページは無効化される必要があります。

ご覧のとおり、ページキャッシングはフラグメントキャッシングと非常によく似ています。どちらも `duration`、`dependencies`、`variations`、`enabled` などのオプションをサポートしています。主な違いは、ページキャッシングはアクションフィルタとして実装され、フラグメントキャッシングはウィジェットとして実装されることです。

フラグメントキャッシング動的コンテンツをページキャッシングと一緒に使用できます。

typo を見つけた場合や、このページの改善が必要だと思われる場合は?
GitHub で編集する !