Встановлення та налаштування 1С-Бітрікс
innodb_buffer_pool_size — перше, що перевіряємо на будь-якому сервері з Бітрікс. Дефолтне значення MySQL (128 МБ) — це вирок для інтернет-магазину з каталогом на 10 000+ товарів. Ставимо 70-80% від доступної RAM на виділеному сервері, 50% на VPS. Одне це налаштування прискорює сайт у 2-3 рази порівняно з дефолтом.
Вибір серверної інфраструктури
BitrixVM — віртуальна машина з попередньо встановленим стеком: nginx + Apache, PHP-FPM, MySQL/MariaDB, Sphinx, Push-сервер. Для VPS — найкращий старт. Все вже сконфігуровано під Бітрікс, включно з OPcache, ротацією логів і файрволом. Керування через веб-панель на порту 8890.
VPS/VDS — золота середина. Мінімальна конфігурація для середнього інтернет-магазину: 2 vCPU, 4 ГБ RAM, SSD. Оптимальна: 4 vCPU, 8 ГБ RAM. ОС: Ubuntu 22.04 або Debian 12. Якщо не BitrixVM — налаштовуємо стек вручну.
Віртуальний хостинг — тільки для візиток і лендінгів. Вимоги: PHP 8.0+, MySQL 5.7+ / MariaDB 10.0+, 512 МБ RAM, .htaccess. Хостинг-партнери 1С-Бітрікс — гарантія сумісності.
Виділений сервер — для highload. Типова архітектура: веб-сервер окремо, база даних окремо, Redis/Memcached окремо. На редакції «Ентерпрайз» — веб-кластер з балансувальником.
Хмара (Yandex Cloud, VK Cloud, Selectel) — коли навантаження стрибає. Розпродажі, сезонні піки. Автомасштабування через Managed Kubernetes або просто вертикальне масштабування VM.
Вибір редакції — де частіше помиляються
| Редакція | Для кого | Ключове обмеження |
|---|---|---|
| Старт | Візитки, лендінги | Немає інфоблоків 2.0, немає торгового каталогу |
| Стандарт | Корпоративні сайти | Немає e-commerce модуля |
| Малий бізнес | Маленькі магазини | 1 тип ціни, 1 склад, немає обміну з 1С |
| Бізнес | Середні магазини, B2B | Мультисклад, мультивалюта, CommerceML |
| Ентерпрайз | Highload, кластер | Веб-кластер, CDN, багатосайтовість |
Типова помилка: беруть «Малий бізнес» для магазину, який через півроку виростає до B2B з оптовими цінами і трьома складами. Перехід на «Бізнес» — доплата різниці, дані не втрачаються, але краще передбачити заздалегідь.
Налаштування серверного стеку
Веб-сервер. nginx як reverse proxy + Apache (mod_php) або nginx + PHP-FPM напряму. Другий варіант економить пам'ять — Apache не потрібен. Але деякі модулі Бітрікс використовують .htaccess, тому для сумісності іноді залишаємо Apache.
Конфігурація nginx для Бітрікс:
-
fastcgi_read_timeout 300— для довгих операцій (імпорт із 1С) -
client_max_body_size 1024m— завантаження великих файлів - Закриття доступу до
.settings.php,.settings_extra.php,bitrix/.settings.php— там паролі до бази - Rewrite-правила з
urlrewrite.php— Бітрікс сам генерує, але при nginx + PHP-FPM потрібно продублювати
PHP 8.0-8.2 з розширеннями: mbstring, curl, gd, xml, json, opcache, redis/memcached. Ключові налаштування php.ini:
-
opcache.memory_consumption=256— кеш скомпільованих скриптів -
opcache.max_accelerated_files=20000— у Бітрікса тисячі PHP-файлів -
max_execution_time=300— імпорт каталогу буває тривалим -
memory_limit=512M— для складних операцій, 256M мінімум -
upload_max_filesize=100M,post_max_size=128M
MySQL/MariaDB. Ключові параметри my.cnf:
-
innodb_buffer_pool_size— 70-80% RAM (вже казали, але це настільки важливо) -
innodb_log_file_size=256M— для великих транзакцій -
tmp_table_size=256M,max_heap_table_size=256M— тимчасові таблиці в пам'яті -
thread_pool_size— за кількістю ядер CPU - Кодування
utf8mb4— обов'язково, інакше емодзі та спецсимволи ламаються
Кешування. Redis краще за Memcached для Бітрікс — підтримує persistent connections і надійніший. Налаштовуємо в .settings_extra.php:
'cache' => ['value' => ['type' => ['class_name' => '\\Bitrix\\Main\\Data\\CacheEngineRedis']]]
'session' => ['value' => ['mode' => 'default', 'handlers' => ['general' => ['type' => 'redis']]]]
SSL — без варіантів
Let's Encrypt через certbot — 90% випадків. Автопродовження через cron, сертифікат оновлюється кожні 60 днів.
Конфігурація nginx для HTTPS:
- Редирект HTTP → HTTPS (301)
- HSTS:
Strict-Transport-Security "max-age=31536000; includeSubDomains" - TLS 1.2/1.3, вимикаємо TLS 1.0/1.1
- OCSP Stapling — прискорює SSL-handshake
У Бітрікс: перемикаємо на HTTPS в «Налаштування → Головний модуль → Параметри → Використовувати SSL», оновлюємо sitemap.xml, канонічні URL.
Налаштування пошти — щоб не потрапляло в спам
Стандартна функція mail() у PHP — рулетка. Листи відправляються від імені сервера без автентифікації, поштові провайдери ріжуть їх на підльоті.
-
SMTP — підключаємо через налаштування головного модуля або модуль
mail. Яндекс.Пошта для домену, Mail.ru для бізнесу, або власний поштовий сервер -
SPF —
v=spf1 include:_spf.yandex.net ~all(для Яндекса). Без SPF — Gmail і Mail.ru автоматично кладуть у спам - DKIM — 2048-bit ключ, записуємо в DNS як TXT-запис
-
DMARC — починаємо з
p=noneдля моніторингу, через місяць перемикаємо наp=quarantine
Тестуємо доставлюваність через mail-tester.com — оцінка має бути 9+/10.
Cron — фонові задачі
Агенти Бітрікс за замовчуванням виконуються на хітах (відвідуваннях). На маловідвідуваному сайті агент може не спрацювати годинами. Переводимо на cron:
* * * * * /usr/bin/php /var/www/bitrix/modules/main/tools/cron_events.php
Що ще вішаємо на cron:
- Обмін з 1С — кожні 15-60 хвилин, залежить від обсягу каталогу
-
Пошукова переіндексація —
search.reindexраз на годину -
Бекапи —
mysqldump+ rsync файлів, з ротацією (зберігаємо 7 щоденних + 4 щотижневих) -
Очищення — тимчасові файли в
/bitrix/cache/, прострочені записи кошика, непідтверджені реєстрації
Безпека
Файлова система:
- Власник:
www-data, директорії755, файли644 - Upload:
775для запису веб-сервером - nginx: блокуємо доступ до
\.settings\.php$,\.settings_extra\.php$,/bitrix/php_interface/dbconn\.php$
Проактивний захист Бітрікс:
- WAF — вмикаємо, перевіряємо що не блокує легітимні запити (ajax-форми іноді потрапляють)
- Контроль активності — захист від брутфорсу: блокування після 5 невдалих спроб
- Перевірка цілісності файлів — виявлення модифікацій ядра
- Журнал вторгнень — моніторимо, налаштовуємо сповіщення на email
Адміністративна панель:
- Групи користувачів: адміністратор, контент-менеджер, SEO, оператор магазину — кожному своє
- Двофакторна автентифікація для адмінів — через Google Authenticator або OTP
- Обмеження доступу до
/bitrix/admin/за IP через nginx — для параноїків (виправдано)
Перевірка після встановлення
-
Монітор продуктивності (
/bitrix/admin/perfmon_panel.php) — цілимося в 30+ балів. Нижче 20 — є серйозні проблеми з конфігурацією - Перевірка системи — автоматична перевірка всіх параметрів. Червоні пункти — виправляємо обов'язково, жовті — за ситуацією
- Сканер безпеки — перевірка на типові вразливості
- PageSpeed Insights — TTFB < 200мс на VPS, LCP < 2.5с
- Тестовий обмін з 1С — якщо планується інтеграція, перевіряємо CommerceML-обмін до запуску
Терміни
| Задача | Термін |
|---|---|
| Встановлення на віртуальний хостинг | 2-4 години |
| Встановлення на VPS з налаштуванням стеку | 1-2 дні |
| Встановлення на dedicated з проєктуванням архітектури | 2-5 днів |
| SSL + пошта + cron + безпека | 1-2 дні |
| Налаштування бекапів і моніторингу | 0.5-1 день |
За підсумком — документація з усіма налаштуваннями: версії ПЗ, параметри php.ini та my.cnf, cron-задачі, DNS-записи, доступи. Наступний адміністратор не буде гадати, що і як налаштовано.







