15  /  25

Отладка

Просмотров: 3211 (Статистика ведётся с 06.02.2017)
Роберт Басыров
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5

Основной инструмент отладки - это страница Настройки > Настройки продукта > Композитный сайт > Отладка, на которой производится логирование всех ошибок:

Нажмите на рисунок, чтобы увеличить

По умолчанию инструмент отключён. Укажите требуемый период работы Отладки и включите её. В списке отобразится список страниц не создавших свой файл кеша с данными по странице. Для гарантии появления в списке нужной странице зайдите на неё под пользователем, которому она должна быть отдана в виде кеша.

Основные инструменты работы в ней:

  • Тип события - причина попадания страницы в список. По этой причине можно принимать решение о необходимости доработки страницы. Все возможные ошибки и способы решения:
    • Перезапись кеша. Частая ошибка, имеющая несколько причин. Решение.
    • Голосование компонента "Против" - включить голосование компонента "за". (Неактуально для Автокомпозита.)
    • Вызов RestartBuffer. Как правило этот метод работает на страницах, которые не должны кешироваться. Если нужно чтобы страница кешировалась, избавьтесь от этого вызова.
    • Сброс кеша. Нормальная ситуация, когда сброс кеша происходит при обновлении контента страницы, при обновлении системы (не всегда сбрасывается кеш) и при использовании в URL параметра &clear_cache=Y.
    • Не GET-запрос. В технологии работают только GET запросы.
    • Параметр ncc - параметр URL по умолчанию для запрета на кеширование. Решение - удалить параметр, если он добавлен вручную.
    • Cookie NCC - служебная cookie _NCC (No Composite Cache). Решение - настроить группы.
    • Маска исключения - страница добавлена в поле Маска исключения настроек композитного сайта. Решение - исключить страницу из поля.
    • Параметр Исключения - в URL страницы присутствует параметр, добавленный в поле Параметры URL, при которых не будет работать композитный режим настроек. Решение - исключить параметр из этого списка.
    • Неверный домен не указан домен в поле Список доменных имен. Решение - добавить домен в поле.
    • Неверный параметр запроса. Параметр отсутствует в поле а также страницы содержащие только следующие параметры настроек Композита.
    • Локальный редирект внутри системы, например - короткие ссылки.
    • Административная панель. Независимо от группы, в которой состоит пользователь, кеш не будет применяться к странице на которой отображается Административная панель.
    • Аварийное завершение PHP (die) - кеш не создан из-за вызова функции die или exit.
    • Страница против кеширования (markNonCashable) - установлен запрет на кеширование страницы. Решение - удалить запрет.
    • Композитный Javascript не внедрён. Редкая ошибка, когда возникли какие-то проблемы с внедрением JS. Устранение - дебаг кода.
    • Cookie CC не найдена. Решение - настроить группы.
    • Параметр sessid - в запросе есть сохранённая авторизация.
    • Ajax запрос. Запрос сделан с помощью BX.ajax. Такие запросы не кешируются.
    • Директория /bitrix - административный раздел по умолчанию включён в Маску исключения и не удаляется из неё.
    • Файл index-controller.php - адрес, запрещённый для кеширования.
  • Пользователь - логин пользователя, обращение которого не создало кеш.
  • Сообщение - служебная информация для части событий, по которым возможна расширенная отладка.

Сравнение версий

Ссылка в колонке Сообщения Сравнить версии открывает в новом окне две версии страницы: старую и новую, где простейший сравниватель покажет зелёным - добавленную часть кода, красным - удалённую. Если возможности штатного сравнивателя не устраивают разработчика, то по ссылкам исходный код в "шапке" можно скачать исходный код для более тщательной проверки.

Нажмите на рисунок, чтобы увеличить

Если композитный сайт создаётся на дистрибутиве версии ниже 17.1.0




0
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии