+7 495 008 8452
  • Загрузка
Выберите ваш цвет

Настройка сервера Битрикс Веб окружения под требования модулей

Есть вопросы, которые вы не смогли решить по нашим публикациям самостоятельно? Ждем ваше обращение в нашей службе техподдержки!

Наши решения используют дополнительные библиотеки а также требуют дополнительной настройки сервера под высокие нагрузки, чтобы сайт работал стабильно. Например при запуске выгрузок в многопоточном режиме или же каталогов большого размера. Что же надо сделать чтобы настроить типовое окружение Битрикс под ОС Centos 7 для бесперебойной работы наших модулей?

Давайте для начала перечислим конфигурационные файлы в которых проводиться изменение основных настроек сервера под управлением ОС Centos 7 и установленным окружением 1С-Битрикс.

Главным конфигурационным файлом по умолчанию является /etc/rc.d/init.d/bvat - это скрипт автоматической настройки в нем прописаны параметры используемые веб окружением Битрикс для автоматической настройки под имеющиеся физические ресурсы сервера. Данный скрипт удобен в использовании и позволяет в полностью автоматическом режиме применить настройки по умолчанию, задействовав отведенные серверу ресурсы.

Кроме него есть и конфигурационный файл сервера баз данных - /etc/mysql/conf.d/bvat.cnf  в котором хранятся переменные сервера MySQL, перечислим рекомендуемые значения при наличии на вашем сервере 64 гигабайт физической памяти:

# memory: 65536MB
[mysqld]
    query_cache_type = 1
    query_cache_size = 128M
    query_cache_limit = 16M
    innodb_buffer_pool_size = 18432M
    max_connections = 205
    table_open_cache = 80392
    thread_cache_size = 512
    max_heap_table_size = 256M
    tmp_table_size = 256M
    key_buffer_size = 256M
    join_buffer_size = 32M
    sort_buffer_size = 32M
    bulk_insert_buffer_size = 2M
    myisam_sort_buffer_size = 32M

Но как все сделанное человеком, он не может настроить ваш сервер идеально, для тонкой настройки под конкретные рекомендации нужно использовать ручное управление конфигурационными файлами. Но часто под несложные проекты настраиваемых им рекомендуемых параметров MySQL, PHP и Apache в зависимости от ресурсов сервера бывает вполне достаточно, и если у вас не возникает никаких проблем, мы бы порекомендовали не отключать автоматическое конфигурирование.

Но в случаях если возникает необходимость изменить дефолтные настройки которые не подходят данный скрипт можно поправить или же вообще отключить автоматическую настройку сервера. Например, наша практика показывает, что при большом размере базы данных, настройки, сделанные через bvat, могут приводить к падению служб с ошибкой "out of memory" или отказом в обслуживании.

Разработчики BitrixVM предусмотрели возможность изменения настроек без отключения скрипта автонастройки bvat. Для этого необходимо внести изменения в специальные конфигурационные файлы (в случае их отсутствия надо создать соответсвующие по указанным путям):

/etc/php.d/bitrixenv.ini   - файл хранящий основные настройки сервера

/etc/httpd/bx/conf/prefork.conf - файл хранящий основные параметры сервера по выделению памяти

/etc/php.d/z_bx_custom.ini   - файл хранящий дополнительные настройки PHP

/etc/httpd/bx/custom/z_bx_custom.conf   - файл хранящий дополнительные настройки Apache

/etc/mysql/conf.d/z_bx_custom.cnf   - файл хранящий дополнительные настройки  MySQL

/etc/nginx/bx/conf/z_bx_custom.conf - файл хранящий дополнительные настройки  nginx

/etc/nginx/bx/conf/im_settings.conf  - файл хранящий настройки nginx-push-stream-module


Теперь перечислим основные конфигурационные файлы
/etc/php.ini  - файл хранящий настройки PHP
/etc/my.cnf   - файл хранящий настройки сервера базы данных MySQL
/etc/nginx/nginx.conf   - файл хранящий настройки nginx

дополнительные используемые конфигурационные файлы
/etc/php.d/opcache.ini  - файл хранящий настройки используемого акселератора opcache при условии его использования на сервере, кстати очень советуем его использовать так как он ускоряет выполнение PHP путем сохранения скомпилированного кода в памяти, таким образом исключается постоянное выполнение PHP сценария при каждом обращении к коду. Подобное кэширование и оптимизация работы PHP серьезно снижает нагрузку на ресурсы вашего сервера и поднимает его общую производительность.

кроме того есть еще один конфигурационный файл в котором можно переопределить локальные значения для конкретного сайта - /home/bitrix/www/.htaccess или же в доп сайтах /home/bitrix/ext_www/site1.ru/.htaccess и значения переменных PHP указанные в нем будут самые приоритетные в рамках конкретного сайта. Поэтому один из самых простых способов настройки - простая правка файла .htaccess через текстовый редактор файлового менеджера БУС.

Теперь перейдем к установке и настройке дополнительных библиотек, которые используют наши решения, но которые не поставляются в стандартном пакете веб окружения Битрикса. Кстати, если у вас используется не рекомендованное ПО, то заранее хочется посоветовать перейти на использование окружения поставляемого Битриксом, поверьте опыту сэкономите массу нервов и средств на настройке и обслуживании вашего сервера.

Рассматриваем вариант последовательного ввода команд при подключении к серверу по SSH

Установка библиотеки curl в для VMBitrix (CentOS)
yum install curl
echo "extension=curl.so" > /etc/php.d/curl.ini
apachectl graceful

Установка библиотеки xmlwriter в для VMBitrix (CentOS)
yum install php-xml
echo "extension=xmlwriter.so" > /etc/php.d/xmlwriter.ini
apachectl graceful

Установка библиотеки optipng jpegoptim в для VMBitrix (CentOS)
yum -y install optipng jpegoptim

После инсталяции библиотек надо выполнить его полный рестарт
либо же для применения настроек конкретного сервиса, перезагрузить конкретную службу
рестарт апача - systemctl restart httpd.service
рестарт базы данных - service mysqld restart
рестарт nginx - service nginx restart

В данной статье мы постарались собрать максимум конкретики для владельцев сайтов имеющих базовую подготовку в конфигурировании серверов.

Более подробно ознакомиться со всеми нюансами настройки сервера можно в обучающем курсе от Битрикса - https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=37

Если вы не хотите сидеть и разбираться с настройками, переустанавливать ПО сервера и доводить настройки до оптимальных под ваш проект, можете заказать отдельную услугу по настройке вашего сервера у нас - https://www.acrit-studio.ru/services/settings-trading-platforms/installation-vmbitrix-centos/


Назад в раздел