Конвертация Битрикс из Windows-1251 в UTF-8

Решение:
  1. Бекап (без сохранения поискового индекса и таблиц статистики)
  2. Настройки сервера или .htaccess
    php_value mbstring.func_overload 2
    php_value mbstring.internal_encoding UTF-8
  3. Добавить в /bitrix/php_interface/dbconn.php
    define("BX_UTF", true);
  4. Установить в /bitrix/.settings.php
    utf_mode => array('value' => true, 'readonly' => true)
  5. Изменить в настройках сайта кодировку с windows-1251 на utf-8
  6. Конвертировать все файлы и БД в UTF-8 (скрипт в архиве)
  7. Сменить в /bitrix/php_interface/after_connect.php
    $DB->Query("SET NAMES 'utf8'");
    $DB->Query('SET collation_connection = "utf8_unicode_ci"');
  8. Сменить в /bitrix/php_interface/after_connect_d7.php
    $connection = Bitrix\Main\Application::getConnection();
    $connection->queryExecute('SET NAMES "utf8"');
    $connection->queryExecute('SET collation_connection = "utf8_unicode_ci"');
  9. Сбросить весь кеш
  10. Разавторизоваться. Авторизоваться.
  11. Перевести таблицы в InnoDB
  12. Оптимизировать таблицы
  13. Удалить из корневой директории сайта скрипт convert_utf8.php
Изменено: 02 06 2018
Просмотров: 211