Техподдержка сайтов
+7 (904) 589-06-04
+7 (904) 589-06-04
s.golikov1
info@sng-it.ru
Сайт программиста 1С Битрикс
Сайт программиста
1C Битрикс
(создание и поддержка сайтов)
О себе
Услуги
  • Перевод сайта на https
  • Создание сайтов
  • Интеграция сайта с 1С
  • Выгрузка товаров в Яндекс.Маркет
  • Композитный сайт
  • Внутренняя оптимизация сайта
  • Доработка сайтов
  • Импорт каталога из файла поставщика
  • Перенос сайта на 1С Битрикс
  • Парсинг контента
  • Установка готового сайта
  • Купить лицензию 1С Битрикс
  • Битрикс 24
  • Настройка служб доставки
  • Интеграция с соцсетями
  • Заказ на Маркете
  • Сопровождение сайтов на 1С Битрикс
  • Поиск и удаление вирусов
  • Настройка платежных систем
  • Выгрузка товаров на Hotline
Портфолио
Готовые сайты
  • Недвижимость
  • Медицина
  • Ресторанный бизнес
  • Автомобили и автозапчасти
  • Бухгалтерские и юридические услуги
  • Государство
  • Детские товары
  • Красота и здоровье
  • Мебель, интерьер, декор
  • Образование
  • Одежда и обувь
  • Подарки и сувениры
  • Продукты питания
  • Спорт, туризм и отдых
  • Строительство, ремонт, инструменты
  • Товары для животных
  • ТСЖ, ЖСК
  • Украшения, аксессуары, подарки
  • Электроника и бытовая техника
  • Универсальные
  • Разное
1С Битрикс
  • Старт (6 200 ₽)
  • Стандарт (17 900 ₽)
  • Малый бизнес (40 900 ₽)
  • Бизнес (83 900 ₽)
  • Интернет-магазин + CRM (99 000 ₽)
  • Продление лицензии
  • Сравнить редакции
CRM
  • Битрикс24
Контакты
Ещё
    Сайт программиста 1С Битрикс
    Сайт программиста
    1C Битрикс
    О себе
    Услуги
    Портфолио
    Готовые сайты
    1С Битрикс
    CRM
    Контакты
    Сайт программиста 1С Битрикс
    Сайт программиста
    1C Битрикс
    • Главная
    • О себе
    • Услуги
      • Назад
      • Услуги
      • Перевод сайта на https
      • Создание сайтов
      • Интеграция сайта с 1С
      • Выгрузка товаров в Яндекс.Маркет
      • Композитный сайт
      • Внутренняя оптимизация сайта
      • Доработка сайтов
      • Импорт каталога из файла поставщика
      • Перенос сайта на 1С Битрикс
      • Парсинг контента
      • Установка готового сайта
      • Купить лицензию 1С Битрикс
      • Битрикс 24
      • Настройка служб доставки
      • Интеграция с соцсетями
      • Заказ на Маркете
      • Сопровождение сайтов на 1С Битрикс
      • Поиск и удаление вирусов
      • Настройка платежных систем
      • Выгрузка товаров на Hotline
    • Портфолио
    • Готовые сайты
      • Назад
      • Готовые сайты
      • Недвижимость
      • Медицина
      • Ресторанный бизнес
      • Автомобили и автозапчасти
      • Бухгалтерские и юридические услуги
      • Государство
      • Детские товары
      • Красота и здоровье
      • Мебель, интерьер, декор
      • Образование
      • Одежда и обувь
      • Подарки и сувениры
      • Продукты питания
      • Спорт, туризм и отдых
      • Строительство, ремонт, инструменты
      • Товары для животных
      • ТСЖ, ЖСК
      • Украшения, аксессуары, подарки
      • Электроника и бытовая техника
      • Универсальные
      • Разное
    • 1С Битрикс
      • Назад
      • 1С Битрикс
      • Старт (6 200 ₽)
      • Стандарт (17 900 ₽)
      • Малый бизнес (40 900 ₽)
      • Бизнес (83 900 ₽)
      • Интернет-магазин + CRM (99 000 ₽)
      • Продление лицензии
      • Сравнить редакции
    • CRM
    • Контакты
    • Личный кабинет
    • +7 (904) 589-06-04
    Будьте на связи
    info@sng-it.ru
    • Вконтакте
    • YouTube

    Инструкция по настройке Композита

    • Главная
    • ❶ Блог
    • ❷ Инструкция по настройке Композита
    "Композитный сайт" - это технология, запатентованная компанией 1С Битрикс. Принцип ее работы: выдавать пользователю страницу из быстрого(html) кэша и при загрузке обновлять нужные блоки асинхронными запросами(ajax).

    Цель композитного кэширования - ускорение работы сайта. Скорость открытия страниц важна для пользователя и для сканирования веб-ресурса поисковыми роботами яндекса и гугла.

    1. Делаем настройки в админке
    В административном режиме переходим на страницу настроек Композитного сайта: Настройки -> Настройки продукта -> Композитный сайт
    Включаем кнопку Композит.
    Включить Композит

    Включить Композит Устанавливаем значения полей:
    Хранить кеш: можно оставить в файлах

    Список доменных имен (каждое в новой строке): укажите свой домен, если настроена многосайтовость, то несколько доменов.

    Маска включения: *.php;*.html;*/;* - указываем, что кэшировать будем все url, которые заканчиваются на ".php", ".html" или "/".

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

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

    Дисковая квота (мегабайт): в зависимости от проекта, можно поставить 100 или 100000 мегабайт; для среднего магазина на 3-4 тысячи товаров достаточно 5Гб. Если вы установите меньшую квоту чем требуется, файлы композитного кэша не будут сохраняться после превышения квоты.


    2. Включаем логи
    Вторым шагом включим константы в /bitrix/php_interface/dbconn.php, они нам потребуются для отладки, в файле log.txt будут сохраняться записи об ошибках и успешном создании композитного кэша страницы.
    Для этого переходим: Контент -> Структура сайта -> Файлы и папки -> bitrix -> php_interface .
    Находим файл dbconn.php и нажимаем Редактировать как PHP
    Далее устанавливаем в конце файла эти две сточки:

    define( "BX_COMPOSITE_DEBUG", true );
    define( "LOG_FILENAME", $_SERVER["DOCUMENT_ROOT"]."/log.txt" );
    
    Сохраняем.


    3. Настройка компонентов
    Теперь самое интересное. Компоненты сайта будем делить на статические и динамические.
    Статические - которые выдают одинаковый код для любого пользователя. Например, это может быть меню каталога (bitrix:menu), список разделов(catalog.section.list), список новостей(news.list), детальная страница новости(news.detail) и т.д 

    Для таких компонентов, в шаблонах, после объявления пролога включаем композит:
    if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
    $this->setFrameMode(true); 
    

    В метод setFrameMode можно передать true или false, соответственно включить и отключить композит.

    Динамические компоненты нужно обновлять для каждого пользователя. К таким компонентам относятся малая корзина(bitrix:sale.basket.basket.line) или форма авторизации(bitrix:system.auth.form). Если, к примеру, мы не обновим блок корзины, то он выдаст нам информацию из кэша. А зачем пользователю чужая корзина? Для шаблонов динамических компонентов код выглядит так:
    if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
    $this->setFrameMode(true);
    $this->createFrame()->begin('');
    


    Теперь, если мы хотим кэшировать компоненту, но не полностью, а частично, например, хотим обновлять цены в списке элементов (bitrix:catalog.section)
     
    
    $frame = $this->createFrame('price-index', false)->begin() echo $arFields[PRICES][BASE][PRINT_VALUE_VAT]; $frame->beginStub() echo 'руб.'; $frame->end()
    , тогда при загрузке сайта пользователь увидит
     
    руб.		
    
    , а после обновления асинхронным запросом увидит то, что возвращает
     
    echo $arFields[PRICES][BASE][PRINT_VALUE_VAT];	
    


    Если нам нужно закэшировать часть кода вне компоненты, например, в шаблоне сайта, используем такой код:
    \Bitrix\Main\Page\Frame::getInstance()->startDynamicWithID("user-block");
    if( !$GLOBALS["USER"]->IsAuthorized() ){
        echo 'Авторизация';
    }else{
        echo 'Мой профиль';
    }
    \Bitrix\Main\Page\Frame::getInstance()->finishDynamicWithID("user-block", "");
    


    В большинстве случаев, для настройки "Композитного сайта" этого достаточно.

    Также можно применить:

    6. Используем кэш браузера. Подгружает статику с прошлого хита (для малой корзины)
    $frame=$this->createFrame()->begin('');
    $frame->setBrowserStorage(true); 	 
    
    7. Использование анимации для баннера (плавное появление контента)
    
    $frame = $this->createFrame('top_banner')->begin(''); $frame->setAnimation(true);
    4. Отладка
    Когда вы установите для всех шаблонов компонентов настройки для композита, можно проверить страницу. Для этого откройте ее в браузере под не авторизованным пользователем и посмотрите: в подвале должен появиться баннер "Быстро с 1С Битрикс".
    Если такой баннер не появился, то смотрим файл логов, он находится в корне сайта и называется log.txt.
    В нем будут указаны компоненты, для которых не настроено композитное кэширование.

    Если все-таки у вас возникнут проблемы с настройкой Композитного сайта - обращайтесь, помогу.



    19.02.2016

    Семен Голиков.


    Получите консультацию специалиста
    Семен Голиков
    Семен Голиков
    #
    Cертифицированный программист 1С Битрикс

    У меня Вы можете заказать программные работы или проконсультироваться по сайту.

    C 2010 года разрабатываю и поддерживаю сайты на 1С Битрикс. Являюсь Золотым партнером компании 1С Битрикс и имею компетенции: Интеграция с 1С, Композитный сайт, Битрикс24, а также все сертификаты специалиста.

    Золотой партнер компании 1С Битрикс Компетенция партнера - Интеграция с 1С Компетенция партнера - Композитный сайт Компетенция партнера - Битрикс 24 Участник программы качества внедрений


    info@sng-it.ru
    +7 (904) 589-06-04

    Поделиться:
    Назад к списку
    • Услуги
    • Услуги
    • Блог
    • Видеоуроки
    • Скидки на 1C Битрикс
    • Новости интернета
    • Снипеты

    Аудит сайта
    Записаться на техподдержку
    Читайте также
    Кастомизируем календарь в битриксе Кастомизируем календарь в битриксе Показ изображения вместо плагина видео youtube Показ изображения вместо плагина видео youtube Внедряем Турбо-страницы Яндекса для мобильных устройств Внедряем Турбо-страницы Яндекса для мобильных устройств Перевод таблиц базы данных c MyISAM на InnoDB Перевод таблиц базы данных c MyISAM на InnoDB Удобный подбор домена Удобный подбор домена

    © 2010-2023 Сайт битрикс программиста Семена Голикова.

    Отправляя любую форму на сайте, вы соглашаетесь с политикой конфиденциальности данного сайта.
    - карта сайта
    Главное
    Информация
    Помощь
    • О себе
    • Услуги
    • Готовые сайты
    • Портфолио
    • Купить лицензию 1С Битрикс
    • Битрикс24
    • Контакты
    • Акции
    • Видеоуроки
    • Блог
    • Новости интернета
    • Про интеграцию с 1С
    • Внутренняя оптимизация сайта
    • Сниппеты
    • Хостинг для битрикс
    • Партнерам
    • Отзывы
    • Техподдержка
    +7 (904) 589-06-04
    - позвонить в WhatsApp
    Социальные сети:
    - карта сайта © 2010-2023 Сайт битрикс программиста Семена Голикова.
    Отправляя любую форму на сайте, вы соглашаетесь с политикой конфиденциальности данного сайта.