Налаштування Cloudflare CDN для 1С-Бітрікс

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Налаштування Cloudflare CDN для 1С-Бітрікс
Проста
~1 робочий день
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Налаштування Cloudflare CDN для 1С-Bitrix

Сайт на Bitrix відає статику (JS, CSS, зображення) з того самого сервера, що й PHP. При навантаженні понад 50–100 RPS сервер почина задихатися — не тому що PHP повільний, а тому що Nginx зайнятий раздачею файлів. Cloudflare CDN знімає це навантаження: статика раздається з найближчого edge-сервера, а origin обробляє тільки динаміку.

Що кешувати, а що ні

Cloudflare за замовчуванням кешує файли за розширенням: .js, .css, .jpg, .png, .woff2, .svg та інші. HTML та PHP не кешуються. Для Bitrix це правильна поведінка — динамічні сторінки повинні генеруватися на сервері.

Виключення, які потрібно настроїти через Page Rules або Cache Rules:

  • /upload/resize_cache/ — кешувати. Це ресайзи зображень, вони не змінюються після генерації.
  • /bitrix/cache/не кешувати. Внутрішній кеш Bitrix, не призначений для CDN.
  • /bitrix/admin/* — bypass. Адміністративна панель не повинна кешуватися.
  • /personal/*, /auth/* — bypass. Особистий кабінет, форми авторизації.

Настройка заголовків кешування

Bitrix за замовчуванням не виставляє оптимальні Cache-Control для статики. Nginx зазвичай настроєний з expires 30d для /upload/ та /bitrix/images/. Cloudflare поважає ці заголовки — якщо сервер відає Cache-Control: max-age=2592000, Cloudflare кешуватиме файл 30 днів.

Перевірте конфігурацію Nginx:

location ~* \.(js|css|jpg|jpeg|png|gif|ico|svg|woff|woff2|ttf|eot)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}

Директива immutable повідомляє браузеру, що файл не зміниться — браузер не відправить умовний запит (If-Modified-Since). Для Bitrix це коректно, тому що Vite/webpack додає хеш у назву файлу при кожній збірці.

Browser Cache TTL та Edge Cache TTL

Browser Cache TTL — скільки браузер зберігає файл локально. Встановлюється у Cloudflare Dashboard → Caching → Browser Cache TTL. Рекомендація: «Respect Existing Headers» — нехай Nginx керує.

Edge Cache TTL — скільки Cloudflare зберігає файл на своїх серверах. За замовчуванням визначається заголовками origin-сервера. Через Page Rules можна перевизначити: для /upload/ задайте Edge Cache TTL = 1 місяць.

Мініфікація та оптимізація

Cloudflare пропонує Auto Minify для JS, CSS та HTML. Для Bitrix вимкніть мініфікацію HTML — вона може сломати вставки <script> в компонентах та інлайнові стилі. Мініфікацію JS та CSS можна залишити, але якщо ви вже мініфікуєте на етапі збірки (Vite, webpack) — Cloudflare minify не дасть виграшу й тільки додасть затримку на edge.

Polish (оптимізація зображень) — ввімкніть. Стискує JPEG та PNG без втрати якості (lossy/lossless). Для каталогів з тисячами товарних фотографій економія трафіку досягає 20–30%.

Brotli-стиснення — ввімкніть. Cloudflare стискає текстові відповіді (HTML, JS, CSS) алгоритмом Brotli, який ефективніше gzip на 15–20%.

Перевірка роботи CDN

Після настройки перевірте заголовки відповіді для статичного файлу:

  • cf-cache-status: HIT — файл віданий з кешу Cloudflare.
  • cf-cache-status: MISS — файл запрошений з origin (перший запит або кеш істік).
  • cf-cache-status: DYNAMIC — Cloudflare не кешує цей ресурс (HTML, PHP).

Якщо бачите DYNAMIC для .js або .css — перевірте, не виставляє ли origin заголовок Cache-Control: no-store або Set-Cookie. Cloudflare не кешує відповіді з Set-Cookie, а Bitrix може виставляти cookie сесії на будь-який запит. Переконайтеся, що для статики Nginx обробляє запит напрямку, без передачі у PHP.