Добрый день. В папке html_pages сайта хранятся html страницы, которые и отдаются браузеру при работе композитного кеша (если я правильно понял). Почему бы при их генерации не убирать пробелы и переносы строк. Таким образом битрикс пройдет еще одну рекомендацию от Google PageSpeed Insights
Необходимо установить значение "nofollow" атрибута rel для ссылки «Быстро с 1С-Битрикс» появляющийся при использовании композитного режима.
1С-Битрикс: Управление сайтом проприетарная система управления, установка внешней ссылки без атрибута запрещающего отдачу веса страницы без разрешения лицензиата является недобросовестным поведением, невзирая на юридические ухищрения.
Дать возможность выбора, какую папку из html кеша удалить. Сейчас он может удалить только все. и удаляет в алфавитном порядке. И объем хронимого кеша может измерятся гигами. И если надо удалить кеш только с одного раздела то повлиять ты никак не можешь. И выбора у тебя тоже нет.
Композит для сайта перестает работать, когда место для кеша закончилось. Например, если добавили несколько новых страниц или целый сайт в экземпляр Битрикса, а квоту забыли исправить.
Уведомить администратора о достижении квоты из самого Битрикса (можно не часто по агенту), чтобы не городить свой мониторинг заббиксом папки композитного кеша.
Сейчас есть проблема с безопасной авторизацией и композитом. Если rsa включен в настройках, то перед шаблонами авторизации и регистрации появляется скрипт.
<sc ript type="text/javascript">
top.BX.defer(top.rsasec_form_bind)({'formid':'system_auth_form6zOYVN','key':{'M':'tbe......... и т.д
</sc ript>
Соответственно из-за этого начинают плодиться *.delete.* файлы.
Заявку в ТП уже отправил, обещали доработать, но сроки не известны
Сейчас есть очень серьезные ограничения и проблемы в использовании Композитного режима.
Кейс №1: список товаров с возможностью пользователей: сортировать его по цене, наименованию и другим параметрам; менять вид отображения; изменять количество отображаемых товаров.
Выбранные пользователем параметры отображения сохраняются в куках или в сессии для того чтобы пользователю не тыкать это на странице каждого раздела. Пример такой страницы...
НО! На композитный кэш влияет только URL и никак не могут повлиять куки, сессии и другие параметры. И если все изменяющиеся данные хранятся в динамических областях (а не весь шаблон компонента в такой области) в результате мы имеем на сайте серьезные глюки вплоть до отображения у товаров левых цен.
Такая же проблема встанет если сохранять значения фильтрации в сессии (чтобы не накладывать одно и тоже условия заходя в каждый раздел инфоблока). Так даже на стандартном шаблоне "Умного фильтра" бесплатного типового решения от 1С-Битрикс возможность работы композита при фильтре -- вообще не предусмотрена (заглядывали в код.)
Кейс №2: У нашего типового решения Битроник есть собственная панель настроек, в которой пользователь может выбрать цветовую схему и компоновку различных блоков на странице, например как отображать меню -- горизонтально или вертикально. Соответственно пользователи с разными настройками (если панель разрешена Гостям) видят страницу с одним и тем же URL совершенно по разному, но Композит слеп ко всем этим параметров хранящимся в сессиях, куках, таблицах БД и других переменных. Композит видит только URL -- и это ужасно! Вот кстати по этому конкретно кейсу Битрикс советует все содержимое страницы перестраивать силами CSS чтобы HTML вообще никогда не менялся, но это огномнейшее ограничение, которое нам не то что руки связывает. а руки, ноги и кляп в рот! Считаем это абсолютно недопустимым костылем.
Сейчас, кэш автокэширования может зависеть от ЛЮБЫХ произвольных параметров на усмотрение программиста, очень просим сделайте пожалуйста так же и с композитом -- невозможно ничего боле-менее сложного на нем сейчас заставить работать при таких ограничениях!
Сейчас, для того чтобы заставить страницу работать в композитном режиме нужно, как минимум, залезть в шаблон каждого компонента и добавить строчку
$this->setFrameMode(false);
Когда таких компонентов много — процесс затягивается... А бывает , что просто приходится умышленно копировать какой-нибудь bitrix:socserv.auth.form к себе в шаблон сайта, ради того, чтобы всё остальное заработало...
Слишком много лишних действий. Можно и нужно сделать проще...
Например, ко всем компонентам добавить параметр a la "CACHE_TYPE": "COMPOSITE" => "ALLOW" | "USE" | "SELF" | "DENY" И рассмотреть возможные кейсы:
Компонент «разрешает» работать остальным;
Компонент сам работает в композитном режиме*;
На усмотрение разработчика (разработчик сам правит шаблон компонента и расставляет динамические/статические области);
Компонент запрещает «всё и всем»;
*Предполагает, что система сама оборачивает шаблон компонента в:
Если кто-то не заметил, то когда вы включаете композитный сайт автоматически в зависимости каждой страницы добавляются js-библиотеки BX.core, BX.ajax даже если вы их нигде больше не используете.
Почему добавляются понятно - нужно делать ajax-запросы к теневой странице. Но очень напрягает что ускорение за счет быстрой отдачи страницы смазывается загрузкой дополнительных ~150 кБ javascript. Мне не жалко, вот только на мобильных (а мы помним что композит позиционируется как ускорение и для мобильников в особенности) загрзка и интерпретация этих лишних килобайт скриптов займет много времени.
Это все происходит при том, что на 99% сайтов используется jQuery. А если она уже загружается - почему бы не использовать ее? Битриксу переписать js-заглушки проще и правильнее чем заставлять каждого верстальщика учить BX и не использовать jQuery.
Суть идеи в том, чтобы в настройках модуля композитного сайта появилась настройка "Какую JS-библиотеку использовать для заглушек": BX / jQuery
Необходима методика измерения "времени загрузки" до и после внедрения технологии Композит (то, что в рекламе уменьшилось в 100 раз).
Методика должна быть обоснована (именно то что в презентации описывается в презентации и на http://www.1c-bitrix.ru/composite/, в понятных пользователю терминах, чтобы можно было сравнить с увиденным на экране)
Методика должна быть доступна к реализации простому пользователю (описаны инструменты, где их взять, как настроить, как использовать)
Методика должна быть проиллюстрирована примерами на которых наблюдается заявленное Х100 ускорение сайта.
Сейчас абсолютно не ясно какая из цифр может считаться искомой.
Конкретное пособие по измерению, а не общие слова и теоретические выкладки. Теорию мы усвоили. Нужен практикум.