#contao
#contao
Вопрос:
Существует опция прогрева кэша в System-> Maintanance-> Warmup cache . Я должен еженедельно прогревать кэш на своем сайте contao. Так что я подумываю написать задачу планировщика. Я знаю, что есть вариант для реализации задачи планировщика
$GLOBALS['TL_CRON']
Каковы будут риски при реализации этого? Есть ли угроза безопасности, связанная с этим прогревом кэша в планировщике?
Вкратце:- Мне нужен планировщик для прогрева кэша страниц.
- Отключенные страницы не должны включаться
- Скрытые страницы также должны быть прогреты
Комментарии:
1. В Contao нет опции для прогрева кэша страниц. Вы можете только очистить его. Зачем вам это нужно?
2. тогда какова цель модуля System-> Maintanance-> Warmup cache ?
3. В серверной части Contao такой опции нет. Пожалуйста, предоставьте скриншот, чтобы понять, что вы имеете в виду.
4. @fritzmg добавил скриншот
5. Предположительно, это из установленного вами расширения
oneup/contao-cache-warmup
. Это правильно?
Ответ №1:
Невозможно выполнить то, что вы хотите, с помощью команды или записи cron. Такие вещи, как переиндексация поиска или прогрев кэша страницы интерфейса используемого вами расширения, работают только через запросы JavaScript AJAX — следовательно, для их работы нужен клиент. У Contao пока нет возможности использовать что-то вроде очереди запросов на стороне сервера для прогрева кэша страниц и индексации поиска.
Ответ №2:
Я предполагаю, что вы имеете в виду установку Contao 3 и под кэшем вы подразумеваете внутренний кэш, который вы можете очистить в разделе обслуживания серверной части и затем перестроить.
Для этого вы могли бы использовать ContaoAutomator
класс, для которого также существует интерфейс командной строки. Чтобы очистить и перестроить внутренний кэш, вы могли бы использовать следующую команду:
$ php system/bin/automator generateInternalCache
При необходимости замените php
paht на соответствующий PHP CLI (предпочтительно на версию PHP, используемую в вашей установке Contao).
Обновить:
Для Contao 4 (управляемая версия), которая представляет собой приложение на базе Symfony, вы можете использовать следующие команды:
$ php vendor/bin/contao-console cache:clear --no-warmup
$ php vendor/bin/contao-console cache:warmup
Комментарии:
1. Я использую contao 4.6.14
2. Пожалуйста, предоставьте всю необходимую информацию в вашем исходном сообщении в следующий раз.
3. необходимо очистить кэш поиска, кэш страниц, поисковый idex перед прогревом кэша?
4. Нет, эти кэши не имеют ничего общего с кэшем приложения. В любом случае, зачем вам регулярно прогревать кэш вашего приложения?
5. На самом деле моему клиенту необходимо еженедельно очищать кэш. В любом случае кэш: прогрев очищает только кэш приложения? Мне также нужно очистить кэш поиска, кэш страниц, idex поиска . Любой альтернативный метод, доступный для достижения моего требования?