Заголовок ответа Cache-Control

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Закрыто
legos031
Сообщения: 8
Зарегистрирован: 2021.10.17, 20:59

Заголовок ответа Cache-Control

Сообщение legos031 »

Добрый день. Пользуюсь сервисом для перевода контента qTranslate. По идее он должен хранить на своем cdn переведенные страницы, кеш, 24 часа.
В моем случае кеш не работает, судя по ответу страницы в заголовке x-gt-cache-status:BYPASS. Поддержка отвечает что нужно изменить заголовок ответа, Cache-Control, сейчас он no-cache. Как это сделать для всего приложения сразу?
legos031
Сообщения: 8
Зарегистрирован: 2021.10.17, 20:59

Re: Заголовок ответа Cache-Control

Сообщение legos031 »

Добавил в контроллер такое поведение:

Код: Выделить всё

public function behaviors()
{
    return [
        
        'httpCache' => [
          'class' => 'yii\filters\HttpCache',
		  'lastModified' => function ($action, $params) {
			return time();
			},
			'sessionCacheLimiter' => 'public',
			'cacheControlHeader' => 'public, max-age=3600',
        ],
    ];
И это сработало, ответ получен от cdn, Cache-Control:public, max-age=3600.
И так для каждого маршрута?
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: Заголовок ответа Cache-Control

Сообщение unknownby »

legos031 писал(а): 2021.10.20, 14:11 Добавил в контроллер такое поведение:
И это сработало, ответ получен от cdn, Cache-Control:public, max-age=3600.
И так для каждого маршрута?
По логике, да. Как вариант можно сделать общий контроллер, для всех ваших контроллеров (если их очень много и всем нужно прописать одну и ту же логику). Внутри него указать настройку и при создании контроллера экстендится от общего.

Можно попробовать на уровне конфига, если получится

Код: Выделить всё

'on beforeAction' => function ($event) {
//магия
    },
Насчет конфига под вопросом :)
legos031
Сообщения: 8
Зарегистрирован: 2021.10.17, 20:59

Re: Заголовок ответа Cache-Control

Сообщение legos031 »

Благодарю!
Закрыто