Команды управления кешем
Команды для очистки кеша Битрикс: полная очистка всех типов кеша и выборочная очистка по типу.
cache:clear
Выполняет полную очистку всех типов кеша в системе.
Синтаксис
php bitrix.php cache:clearЧто очищается
Команда очищает следующие типы кеша:
- Основной кеш - кеш данных приложения
- Кеш-менеджер - управляемый кеш
- Тегированный кеш - кеш с тегами
- Композитный кеш - кеш страниц (HTML-кеш)
- Кеш компонентов - кеш компонентов Битрикс
Примеры использования
# Полная очистка кеша
php bitrix.php cache:clear
# С подробным выводом
php bitrix.php cache:clear -v
# Тихий режим (без вывода)
php bitrix.php cache:clear -qКогда использовать
Очистка кеша необходима после:
- Обновления модулей
- Изменения настроек системы
- Изменения шаблонов или компонентов
- Обновления инфоблоков
- Изменения прав доступа
- Изменения структуры сайта
- При возникновении проблем с отображением данных
Производительность
⚠️ Внимание! После очистки кеша система будет работать медленнее, пока кеш не будет восстановлен. Планируйте очистку кеша на периоды низкой нагрузки.
cache:type:clear
Очищает кеш определенного типа.
Синтаксис
php bitrix.php cache:type:clear <type>Аргументы
type- тип кеша для очистки
Доступные типы кеша
Наиболее часто используемые типы:
menu- кеш менюiblock- кеш инфоблоковcatalog- кеш каталогаsale- кеш модуля интернет-магазинаform- кеш веб-формmain- основной кешcurrency- кеш валютhtmlpages- HTML-кеш страницuser_option- кеш пользовательских настроек
Примеры использования
# Очистка кеша меню
php bitrix.php cache:type:clear menu
# Очистка кеша инфоблоков
php bitrix.php cache:type:clear iblock
# Очистка кеша каталога
php bitrix.php cache:type:clear catalog
# Очистка кеша интернет-магазина
php bitrix.php cache:type:clear sale
# Очистка HTML-кеша
php bitrix.php cache:type:clear htmlpagesКогда использовать выборочную очистку
Выборочная очистка кеша полезна, когда:
- Изменены данные только в одном модуле
- Обновлены элементы каталога
- Изменена структура меню
- Не нужно очищать весь кеш (экономия времени)
Преимущества
✅ Быстрее полной очистки
✅ Меньше влияния на производительность
✅ Точечное решение проблем
✅ Можно использовать чаще
Использование в автоматизации
Регулярная очистка кеша
# Очистка кеша каждый день в 3:00
0 3 * * * cd /var/www/bitrix && php bitrix.php cache:clearОчистка после импорта данных
#!/bin/bash
# Скрипт импорта с очисткой кеша
# Импорт данных
/path/to/import-script.sh
# Очистка кеша каталога и инфоблоков
cd /var/www/bitrix
php bitrix.php cache:type:clear iblock
php bitrix.php cache:type:clear catalog
echo "Импорт завершен, кеш очищен"Очистка кеша после развертывания
#!/bin/bash
# deploy.sh
# Обновление кода
git pull origin master
# Установка зависимостей
composer install
# Очистка всего кеша
cd bitrix
php bitrix.php cache:clear
# Перезапуск PHP-FPM (опционально)
sudo systemctl restart php8.1-fpmМониторинг и очистка по расписанию
#!/bin/bash
# Очистка определенных типов кеша по расписанию
cd /var/www/bitrix
# Понедельник - полная очистка
if [ $(date +%u) -eq 1 ]; then
php bitrix.php cache:clear
else
# Остальные дни - только актуальные типы
php bitrix.php cache:type:clear iblock
php bitrix.php cache:type:clear menu
php bitrix.php cache:type:clear catalog
fiПродвинутые сценарии
Очистка кеша с уведомлением
#!/bin/bash
# Очистка кеша с отправкой уведомления
cd /var/www/bitrix
if php bitrix.php cache:clear; then
echo "Кеш успешно очищен" | mail -s "Cache cleared" admin@example.com
else
echo "Ошибка при очистке кеша" | mail -s "Cache clear ERROR" admin@example.com
fiTroubleshooting
Кеш не очищается
Проблема: После выполнения команды кеш остается
Решения:
- Проверьте права доступа к директории
/bitrix/cache/ - Убедитесь, что процесс PHP имеет права на удаление файлов
- Проверьте, не используется ли внешний кеш (Redis, Memcache)
- Очистите кеш вручную:
rm -rf /path/to/bitrix/cache/*
Ошибка прав доступа
Проблема: Permission denied при очистке кеша
Решения:
- Проверьте владельца директории кеша:
ls -la /path/to/bitrix/cache/ - Установите правильного владельца:
chown -R www-data:www-data /path/to/bitrix/cache/ - Установите права:
chmod -R 775 /path/to/bitrix/cache/
Сайт медленно работает после очистки
Проблема: Значительное снижение производительности после очистки кеша
Решения:
- Это нормально - кеш восстанавливается при обращении к страницам
- Используйте выборочную очистку кеша вместо полной
- Очищайте кеш в периоды низкой нагрузки
- Рассмотрите возможность прогрева кеша после очистки
Внешний кеш не очищается
Проблема: Redis/Memcache кеш не очищается командой
Решения:
- Очистите Redis вручную:
redis-cli FLUSHALL - Очистите Memcache:
echo "flush_all" | nc localhost 11211 - Проверьте настройки подключения к внешнему кешу в
.settings.php
Полезные советы
💡 Используйте выборочную очистку - это быстрее и меньше влияет на производительность
💡 Планируйте очистку - очищайте кеш в периоды низкой нагрузки (ночью, ранним утром)
💡 Автоматизируйте - настройте регулярную очистку через cron
💡 Мониторьте - следите за размером директории кеша, очищайте при необходимости
💡 Комбинируйте - используйте полную очистку редко, выборочную - часто
Смотрите также
- Команды модулей - очистка кеша часто нужна после установки модулей
- Команды инфоблоков - очистка кеша после изменения инфоблоков
- Примеры cron - автоматизация очистки кеша
- Официальная документация Битрикс по кешированию