Что умеет решение
Модуль генерирует HTTP-заголовки Last-Modified и 304 Not Modified для ускорения индексации интернет-магазина поисковыми системами. Заголовок Last-Modified сообщает браузеру или роботу время последнего изменения страницы. При повторном запросе, если страница сохранена в локальном кэше, клиент добавляет заголовок If-Modified-Since с этой датой. Сервер сверяет полученную метку со временем актуального изменения. Если страница не обновлялась, возвращается ответ 304 Not Modified без передачи тела страницы, изображений и других объектов.
Решаемые задачи:
Экономия трафика. При отсутствии изменений сервер прекращает передачу данных сразу после отправки заголовков с кодом 304 Not Modified.
Снижение нагрузки на сервер за счёт отказа от повторной отправки неизменного контента.
Модуль BX365: Установка и настройка заголовков Last Modified и 304 Not Modified
Установка модуля позволяет существенно снизить нагрузку на сервер, в том числе на 30% и более. Данная оптимизация особенно эффективна для ресурсов с высоким трафиком и длительным временем пребывания пользователей.
Использование модуля способствует ускорению индексации сайта поисковыми системами Яндекс и Google. Данные поисковые системы в своих руководствах для вебмастеров рекомендуют отправлять заголовок Last-Modified и корректно обрабатывать запрос If-Modified-Since.
Алгоритм обновления даты изменения документа работает следующим образом. При запросе страницы модуль анализирует текстовое содержимое, находящееся между тегами body, предварительно удаляя скрипты, стили и HTML-разметку. Для оставшегося текста вычисляется MD5-хэш и сравнивается с ранее сохраненным значением. При несовпадении хэшей фиксируется изменение документа и обновляется дата его модификации. При совпадении хэшей документ считается неизменным, дата не обновляется и возвращается предыдущее значение.
Настройки модуля
- Отключить модуль. Полностью деактивирует функционал расширения.
Модуль BX365: Настройка заголовков Last Modified и 304 Not Modified
Включить логирование. При активации в каталоге /upload/ создается файл bx365_modified_log.txt для фиксации событий.
Исключить домены из обработки. Укажите один домен или список доменов через запятую, для которых заголовки Last Modified и 304 Not Modified не будут применяться.
Исключить конкретные страницы. Введите URL-адреса страниц, для которых отключена установка заголовков. Каждый адрес размещается на отдельной строке. Примеры: /auth/, /basket/, /login/, /order/, /personal/
Исключить группы пользователей. Выберите группы пользователей, для которых заголовки Last Modified и 304 Not Modified не будут генерироваться.
Игнорировать GET-параметры. Отключите учет наличия параметров в строке запроса URL при формировании заголовков.
Настройка обработки статических блоков. Укажите CSS-классы статических HTML-блоков с текстовым содержимым (например, описание новостей, товаров или услуг), которые необходимо обрабатывать. Каждый класс вводится с новой строки.
Модуль позволяет исключить динамические HTML-блоки из анализа текстового содержимого страницы. Для этого необходимо указать классы элементов, подлежащих исключению, каждый с новой строки. Поддерживается удаление любых динамических блоков, таких как виджеты корзины, фильтры товаров или формы обратной связи.
Функция очистки кеша удаляет ранее рассчитанные модулем данные: URL-адреса, даты изменения документов и MD5-хэши.
Особенности работы модуля
Модуль не обрабатывает запросы к страницам в директориях /bitrix/ и /upload/, включая все вложенные подпапки. Обработка не производится для запросов, выполненных методом POST, AJAX-запросов и страниц с ошибкой 404.
Учет GET-параметров в строке URL включен по умолчанию, но может быть отключен в настройках. При наличии различных наборов GET-параметров для одной и той же страницы будут формироваться разные даты изменения документа.
Модуль корректно взаимодействует со стандартным функционалом «Устанавливать в заголовках ответа время модификации страницы», подставляя рассчитанную им дату.
Работоспособность модуля не гарантируется при включенном композитном режиме (технология Композитный сайт).
Модуль BX365: Установка и настройка заголовков Last-Modified и 304 Not Modified.
Если модуль не работает, необходимо исключить влияние сторонних скриптов, протестировав работу заголовка Last-Modified на сервере. Загрузите проверочный файл LastModified.php в корневую директорию сайта. Откройте этот файл в браузере и запустите проверку.
Если проверка не проходит, значит на вашем хостинге отправка этих заголовков отключена. Для пользователей с ISP-панелью попробуйте отключить SSI в разделе дополнительных настроек сайта. В остальных случаях обратитесь в техническую поддержку хостинга, указав ссылку на проверочный файл и сообщив, что заголовок Last-Modified не передается клиенту.
Если проверочный файл проходит тест, но заголовок не проставляется на сайте, обратитесь в техническую поддержку для поиска причины.
При необходимости General iT поможет внедрить «BX365: Установка и настройка Last Modified, 304 Not Modified», настроить модуль и проверить его работу вместе с текущей конфигурацией сайта.