Расширение функционала Bitrix 24/Введение
На данный момент максимальная допустимая версия PHP для Битрикс - 7.2
Многие рекомендуют для установки Битрикс использовать виртуальную машину - «1C-Битрикс: Виртуальная машина». ВМ создана на основе дистрибутива Centos 7.
Системные требования Bitrix24 для ручной настройки можно найти тут.
Выбор веб-сервера
[править]apache
[править]Настроить Apche гораздо проще чем nginx.
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf
sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/conf-available/ssl.conf
sudo a2ensite example.com
sudo a2dissite 000-default.conf
sudo a2enconf ssl.conf
sudo systemctl restart apache2
nginx
[править]Если вы решили использовать nginx, то настоятельно рекомендуется использовать образ виртуальной машины от Битрикс.
Как ни странно, но процесс установки может существенно отличаться в зависимости от используемого сервера. Если вы видите такие настройки:
и в заголовке страницы указана версия продукта - Энтерпрайз (хотя вы устанавливаете другую), то вы используете nginx и возможно установка не сможет завершиться корректно.
Если возникает ошибка:
- Bitrix site manager must be installed in web server root directory
то необходимо произвести следующие настройки.
Настройка семантических адресов для nginx описана тут.
Серверное окружение
[править]Сразу настройте необходимые директивы в php.ini и
short_open_tag=On
display_errors = On
max_input_vars = 10000
memory_limit = 1024M
mbstring.func_overload = 2
date.timezone = 'Europe/Moscow'
post_max_size = 100M
upload_max_filesize = 100M
error_log = php-errors.log
Перед установкой нужно убедится в возможности записи в целевую директорию:
sudo usermod -a -G www-data username
sudo chown -R www-data:www-data /var/www
sudo chmod -R ug+rw /var/www/html
Всегда создавайте отдельного пользователя БД для каждого сайта
CREATE USER 'bitrix'@'localhost' IDENTIFIED BY 'password';
-- CREATE DATABASE bitrix CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE DATABASE bitrix DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON bitrix.* TO 'bitrix'@'localhost';
FLUSH PRIVILEGES;
У Битрикс происходит проверка установки переменной окружения getenv('BITRIX_VA_VER'). Установить ее можно вручную в /local/php_interface/init.php или /bitrix/php_interface/init.php добавив туда:
//Номер последней версии смотрим тут - http://repos.1c-bitrix.ru/yum/bitrix-env.version
putenv("BITRIX_VA_VER=7.4-3");
// error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT);
//ini_set('display_errors', '1');
ini_set('default_charset', 'utf-8');
ini_set('mbstring.internal_encoding', 'UTF-8');
ini_set('mbstring.func_overload', 2);
Еще может понадобится установить переменные окружения для MySQL в файле /bitrix/php_interface/after_connect.php:
$DB->Query("SET NAMES 'utf8'");
$DB->Query('SET collation_connection = "utf8_unicode_ci"');
$DB->Query('SET innodb_strict_mode = "off"');
$DB->Query("SET sql_mode = ''");
$DB->Query("SET wait_timeout=28800");
Убираем ограничение на максимальное количество открытых файлов в /etc/sysctl.conf:
fs.file-max=512000
Или тоже действие для конкретного пользователя - /etc/security/limits.conf:
www-data soft nofile 100000
www-data hard nofile 100000
Если не сработает, то остается костыль - прописать
ulimit -n 100000
#ulimit -s unlimited
в /etc/default/apache2
для проверки:
cat /proc/sys/fs/file-max
Установка Bitrix
[править]Перед установкой Битрикса рекомендуется выполнить скрипт проверки сервера. Он проверяет соответствует ли он техническим требованиям Битрикса.
Загрузить любой дистрибутив непосредственно на хостинг можно с помощью скрипта BitrixSetup
wget https://www.1c-bitrix.ru/download/scripts/bitrixsetup.php
Кроме того, скрипт позволяет распаковать дистрибутив без доступа к порталу по ssh или внешними программами.
Настройка после установки
[править]Сразу после установки переведите работу агентов на cron.