Кэширование зарегистрированной пользовательской панели в Symfony2 - PullRequest
1 голос
/ 05 февраля 2012

Я собираюсь добавить кеширование на мой сайт, но я немного запутался в том, как кэшировать / не кэшировать информацию о зарегистрированном пользователе в заголовке. Представьте, что какой-то контроллер отображает шаблон bundle: controller: view.twig. И я кеширую это представление внутри контроллера на 1 неделю. Я также включаю bundle: controller: часть, которая отображает часть, которая кэшируется на 1 месяц. Проблема заключается в том, что view.twig расширяет некоторые base.twig с заголовком раздела, который отображает «hello guest» или «hello user@user.com» в зависимости от аутентификации.

Должен ли я включить какой-нибудь мини-контроллер (bundle: controller: login_info), который отображает информацию 'hello' в base.twig? Или есть другой, более простой способ?

1 Ответ

2 голосов
/ 06 февраля 2012

Существует несколько типов кэша, которые вы можете использовать с Symfony2.

  • Со встроенным обратным прокси-сервером и поддержкой HTTP-кэша , вы можете кэшировать только целые веб-страницы.

  • Если вы хотите кэшировать фрагменты страницы, вам придется использовать Edge Side Includes (ESI) .Похоже, это то, что вы ищете, если вы хотите, чтобы только часть "hello guest" не была кэширована.

Глава о кэшировании из книги Symfony2 очень хорошо написано и объясняет, как настроить все виды кэшей для вашего приложения (целую страницу или фрагменты).

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...