29  /  274

Быстрая установка (Short install)

Просмотров: 34529
Дата последнего изменения: 23.08.2023
Александр Суворов
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5

  Быстрая установка

Быстрая установка позволяет в упрощенном виде установить продукт «1C-Битрикс». Во время такой установки мастером пропускаются шаги лицензионного соглашения, предварительной проверки хостинга, выбора и настройки базы данных и т.п.

Таким образом, быстрая установка начнется с Пятого шага мастера установки продукта.

Все необходимые данные для установки содержатся в файлах /bitrix/php_interface/dbconn.php (до версии 20.900.0) и /bitrix/.settings.php (с версии 20.900.0), которые нужно создать и поместить в необходимые директории устанавливаемого дистрибутива.

  Пример файла
/bitrix/php_interface/dbconn.php

<? 
define("SHORT_INSTALL", true);
define("SHORT_INSTALL_CHECK", true);

define("MYSQL_TABLE_TYPE", "INNODB");
define("BX_UTF", true);

define("DBPersistent", false);
$DBType = "mysql";
$DBHost = "127.0.0.1:31007";
$DBName = "sitemanager";
$DBLogin = "user";
$DBPassword = "123456";
$DBDebug = false;
$DBDebugToFile = false;

define("BX_FILE_PERMISSIONS", 0664);
define("BX_DIR_PERMISSIONS", 0775);
@umask(~BX_DIR_PERMISSIONS);

define("BX_USE_MYSQLI", true);
define("DELAY_DB_CONNECT", true);
define("CACHED_menu", 3600);
define("CACHED_b_file", 3600);
define("CACHED_b_file_bucket_size", 10);
define("CACHED_b_lang", 3600);
define("CACHED_b_option", 3600);
define("CACHED_b_lang_domain", 3600);
define("CACHED_b_site_template", 3600);
define("CACHED_b_event", 3600);
define("CACHED_b_agent", 3660);

?>

Рассмотрим каждую строку подробнее:

  • SHORT_INSTALL - если указано значение true, то запускается упрощенный мастер установки.
  • SHORT_INSTALL_CHECK - проверка параметров окружения (права доступа к файлам, БД и т.п). Если такой константы нет, проверка будет выполнена на первом хите. После этого в начало dbconn.php запишется define("SHORT_INSTALL_CHECK", true);
  • MYSQL_TABLE_TYPE - выбор типа таблиц MySQL: MyISAM или InnoDB.
  • BX_UTF - выбор кодировки сайта: true - UTF8, false - CP1251.
  • DBPersistent - если данная константа инициализирована значением true, то будет создаваться постоянное соединение с базой, иначе - обычное.

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

  • $DBType - указывается тип базы: mysql.
  • $DBHost - указывается адрес и порт сервера базы данных MySQL (например, localhost или 192.168.3.155:31007, если БД находится на другом хосте и на нестандартном порту).
  • $DBName - указывается имя базы MySQL (например, sitemanager).

    Примечание: База данных должна быть заранее создана на хостинге. Например, для кодировки сайта в UTF8 при создании MySQL-базы collation для нее должно быть utf8_unicode_ci, в CP1251 - cp1251_general_ci.

  • $DBLogin - логин пользователя для доступа в базу данных.
  • $DBPassword - пароль пользователя для доступа в базу данных.
  • $DBDebug - если данная переменная будет равна true, то в случае ошибки при создании соединения с базой или в любом SQL-запросе, сообщение об ошибке и полный текст этой ошибки будет отображаться в браузере. В противном случае - полный текст ошибки будет показан только администратору сайта.
  • $DBDebugToFile - если данная переменная будет равна true, то все SQL-запросы к базе данных и время их выполнения будут записываться в лог-файл /mysql_debug.sql . Данная возможность используется, как правило, для получения данных о скорости выполнения SQL-запросов к базе данных.

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

  • BX_FILE_PERMISSIONS - права, с которыми будут создаваться файлы. Права должны быть достаточными для доступа веб-сервера на запись (по умолчанию - 0644).
  • BX_DIR_PERMISSIONS - права, с которыми будут создаваться каталоги. Права должны быть достаточными для доступа веб-сервера на запись (по умолчанию - 0755).
  • @umask(~BX_DIR_PERMISSIONS) - возвращает права на директории, созданные в процессе установки продукта, к принятым по умолчанию на хостинге (без вывода ошибок).
  • BX_USE_MYSQLI - использование расширения mysqli (в версии ядра 14.5.2 и выше).

    Внимание: В PHP должно быть установлено расширение mysqli, дополнительные проверки на наличие расширения не производятся! Включать mysqli нужно отдельно для старого (dbconn.php) и нового (.settings.php) ядра.

  • DELAY_DB_CONNECT - подключение к базе данных будет автоматически устанавливаться при первом запросе через API-функции.
  • CACHED_menu - указывается время жизни управляемого кеша меню в секундах. Если константа равна false, то кеширование меню отключено.
  • CACHED_b_lang, CACHED_b_option, CACHED_b_lang_domain, CACHED_b_site_template, CACHED_b_event, CACHED_b_agent - указывается время жизни управляемого кеша языковых файлов, настроек, шаблона сайта, событий и агентов в секундах. Если константа равна false, то кеширование отключено.

  Пример файла
/bitrix/.settings.php

<?php
return array (
  'utf_mode' =>
  array (
    'value' => true,
    'readonly' => true,
  ),
  'cache_flags' =>
  array (
    'value' =>
    array (
      'config_options' => 3600,
      'site_domain' => 3600,
    ),
    'readonly' => false,
  ),
  'cookies' =>
  array (
    'value' =>
    array (
      'secure' => false,
      'http_only' => true,
    ),
    'readonly' => false,
  ),
  'exception_handling' =>
  array (
    'value' =>
    array (
      'debug' => false,
      'handled_errors_types' => 4437,
      'exception_errors_types' => 4437,
      'ignore_silence' => false,
      'assertion_throws_exception' => true,
      'assertion_error_type' => 256,
      'log' => array (
          'settings' =>
          array (
            'file' => '/var/log/php/exceptions.log',
            'log_size' => 1000000,
        ),
      ),
    ),
    'readonly' => false,
  ),
  'connections' =>
  array (
    'value' =>
    array (
      'default' =>
      array (
        'className' => '\\Bitrix\\Main\\DB\\MysqlConnection',
        'host' => 'localhost',
        'database' => 'sitemanager0',
        'login' => 'root',
        'password' => '',
        'options' => 2,
      ),
    ),
    'readonly' => true,
  )
);

Примечание: Некоторые секции файла настроек содержат параметр readonly. Если он принимает значение true, то данные настройки нельзя изменить через API.

  • utf_mode - отвечает за кодировку сайта, значения value:
    • true - UTF8;
    • false - CP1251.
  • cache_flags - флаги кэширования:
    • config_options - время жизни кэша настроек сайта в секундах;
    • site_domain - время жизни кэша настроек домена в секундах.
  • cookies - отвечает за cookies на сайте.
  • exception_handling - секция отвечает за обработку ошибок.
  • connections - секция отвечает за параметры соединения с базой данных и другими источниками данных.


8
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии