Прочитайте готовые ответы
Новые статьи
Поддержка Битрикс24
Регистрация и вход
Тарифы и оплата
Задачи и проекты
Мессенджер
Главная страница: наш вайб
Группы
Календарь
CRM + Интернет-магазин
Диск
Сайты
База знаний
Интернет-магазин (beta)
Складской учет
Почта
CRM
CoPilot — AI в Битрикс24
Битрикс24 КЭДО
Подпись
Маркетинг
Сквозная аналитика
Центр продаж (beta)
CRM-аналитика (beta)
BI Конструктор
Автоматизация
CRM.Оплата и Доставка
Интеграция 1С и Битрикс24
Компания
Бизнес-процессы
Приложения
Контакт-центр
Моя страница
Телефония
Настройки
Мой тариф
Энтерпрайз
Enterprise HRM
Десктоп-приложение
Общие вопросы
Битрикс24 в коробке
1С-Битрикс24: Интернет-магазин + CRM
Изменения в статьях (архив)

Поддержка24

Коробка: ограничение работы системы обновлений

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

В ближайшем будущем система обновлений заблокирует установку новых обновлений, если настройки вашего сервера не удовлетворяют техническим требованиям:

  • Должно быть установлено расширение PHP mbstring.

  • Параметр default_charset в php.ini должен быть заполнен.

  • Параметр mbstring.internal_encoding в php.ini должен быть пустым. Вместо него необходимо использовать параметр default_charset.

  • Если установка работает в кодировке UTF-8, то параметр default_charset и результат вызова mb_internal_encoding() должны быть равны UTF-8.

  • Если установка работает не в кодировке UTF-8, то параметр default_charset и результат вызова mb_internal_encoding() должны быть равны той кодировке, в которой работает установка.

  • Если используется веб-сервер Apache, но в нем должен быть установлен модуль mod_rewrite.

  • Версия PHP должна быть не ниже 7.4.

Как настроить однобайтовую кодировку на CentOS 7

Самое главное – добавить mb_internal_encoding('Windows-1251'); в файл /bitrix/php_interface/dbconn.php.

Проверяем, правильно ли работает система:

var_dump(strtoupper("Москва"));
var_dump(mb_strtoupper("Москва"));

Результат выполнения команды:

string(6) "Москва"
string(6) "??????"

Видим ошибку. Проверяем, есть ли локаль cp1251 в системе. Если ответ 0 – нет, если 1 - есть:

[root@sitemanager ~]# locale -a | grep ru_RU.cp1251 -ic
0

Добавляем локаль в систему:

[root@sitemanager ~]# localedef -c -i ru_RU -f CP1251 ru_RU.CP1251

Проверяем:

[root@sitemanager ~]# locale -a | grep ru_RU.cp1251 -ic
1

Перезагружаем веб-сервер:

[root@sitemanager ~]# systemctl restart httpd.service

Добавляем настройки в /bitrix/php_interface/dbconn.php:

setlocale(LC_ALL, 'ru_RU.CP1251' );
setlocale(LC_NUMERIC, 'C' );
mb_internal_encoding('Windows-1251');

Проверяем:

var_dump(strtoupper("Москва"));
var_dump(mb_strtoupper("Москва"));

Получаем правильный результат:

string(6) "МОСКВА"
string(6) "МОСКВА"


Спасибо, помогло!
Спасибо :)
Не помогло
Очень жаль :(
Помощь интегратора
Это не то, что я ищу
Написано очень сложно и непонятно
Есть устаревшая информация
Слишком коротко, мне не хватает информации
Мне не нравится, как это работает