- Php fatal error string functions are overloaded by mbstring in
- Устранение ошибки: Fatal error: String functions are overloaded by mbstring в Joomla
- [Решено] Fatal error: String functions are overloaded by mbstring in D:\Users\vho_dya2015_959\vho_dy — Joomla 3.x: Общие вопросы
- Joomla 5: плагин обратной совместимости
- Перенос материалов из компонента K2 в стандартный компонент материалов Joomla
- Установка Joomla 3.4.1 на локальный openserver
- Ещё статьи:
- Новые статьи в блоге:
- String functions are overloaded by mbstring
- Как исправить ошибку String functions are overloaded by mbstring
Php fatal error string functions are overloaded by mbstring in
- Вы здесь:
- Главная
- CMS
- Joomla
- Решение проблем с Joomla
- Устранение ошибки: Fatal error: String functions are overloaded by mbstring в Joomla
Устранение ошибки: Fatal error: String functions are overloaded by mbstring в Joomla
Информация о материале Автор: WhiskeyMan Опубликовано: 31 мая 2015 Создано: 31 мая 2015 Обновлено: 20 ноября 2015 Просмотров: 20319
При попытке установить Joomla (или на рабочем сайте после изменения настроек PHP) вы можете встретить ошибку: Fatal error: String functions are overloaded by mbstring in /путь/к/сайту/libraries/vendor/joomla/string/src/phputf8/utf8.php on line 39. Конечно, все эти Fatal error наводят жути, но не стоит их так бояться. Для устранения этой ошибки нужно:
- Открыть php.ini (в ubuntu он может лежать в /etc/php5/apache2/php.ini).
- Найти в нем параметр mbstring.func_overload и установить его значение равное нулю (mbstring.func_overload=0). В последних версиях PHP нельзя выставить параметры модуля mbstring в .htaccess.
- Перезагрузить web-сервер, в случае с apache под ubuntu это делается командой sudo service apache2 restart, ну или можно sudo /etc/init.d/apache2 restart.
Если у вас PHP установлен как модуль для apache, то для конкретного виртуального хоста можно менять настройки, используя конструкцию:
php_value default_charset utf8
php_admin_value mbstring.func_overload 2
php_value mbstring.internal_encoding utf8
php_admin_value realpath_cache_size "4096k"
Еще можно просто удалить этот кусок кода в файле utf8.php:
if ( extension_loaded('mbstring')) < if ( ini_get('mbstring.func_overload') & MB_OVERLOAD_STRING ) < trigger_error('String functions are overloaded by mbstring',E_USER_ERROR); >mb_internal_encoding('UTF-8'); >
Но этот костыль стоит делать в крайнем случае, если сайт, например, на хостинге, и там никак не докопаться до настроек PHP. Если в дальнейшем поменяются настройки PHP, то для работы сайта, возможно, потребуется вернуть фрагмент кода на свое место. При обновлении версии Joomla удаленный код также может вернуться на свое место сам.
У вас недостаточно прав для того чтобы тут гадить.
[Решено] Fatal error: String functions are overloaded by mbstring in D:\Users\vho_dya2015_959\vho_dy — Joomla 3.x: Общие вопросы
Контент-плагин Joomla, позволяющий вставлять информацию из материалов и пользовательских полей материала в любом месте, где работают контент-плагины с помощью шорт-кода вида .Для плагина возможно (и даже необходимо) создавать свои макеты вывода, которые Вы указываете в шорт-коде.
Joomla 5: плагин обратной совместимости
Как известно, из кода Joomla постепенно исчезают устаревшие классы API. Многие из них «продержались» в ядре со времён Joomla 1.5. Отказ от них — это эволюция. Однако, удаление устаревших классов и методов будет вызывать ошибки в расширениях, которые разработчики вовремя не обновили.
Перенос материалов из компонента K2 в стандартный компонент материалов Joomla
K2 — в целом неплохой компонент (был). Некоторое время он давал гораздо больше возможностей для отображения контента, чем стандартный компонент материалов Joomla. Однако, время не стоит на месте, и сейчас стандартный компонент не уступает в возможностях компоненту K2. Разработчики Joomla потрудились на славу, чего не скажешь о разработчиках компонента K2. Мало того, что долгое время не обновлялся функционал компонента, так они не подготовили обновление для перехода на 4 версию Joomla. На момент написания этой статьи прошло почти два года с выпуска Joomla 4, а обновления компонента K2 для совместимости с новой версией так и нет. Возможно, на тот момент, когда вы будете читать эти строки разработчики K2 что-то выкатят, но сейчас нет.
Установка Joomla 3.4.1 на локальный openserver
Возникла у меня необходимость установить и проверить ряд моментов у новой Joomla 3.4.1. Для размещения традиционно выбрал локальный openserver. В целом у меня не возникало проблем с установкой распространенных cms, но не в этот раз. Первой выскочила ошибка:
Fatal error: String functions are overloaded by mbstring in D:OpenServerdomainsjoomlalibrariesvendorjoomlastringsrcphputf8utf8.php on line 39
Пошел посмотреть код ошибки, т.е. строки 39:
Так как я при установке использую кодировку UTF-8, соответственно в файле настроек РНР стоят нужные настройки и одна из них не нравится joomla, а именно:
mbstring.func_overload = 2 и выше не подходят, должно быть значение 0
Казалось бы все, дальше все пойдет как по маслу, но не тут то было. Далее выскочил следующий баг:
В итоге пришлось создать файл .htaccess в котором прописать:
php_flag magic_quotes_gpc Off
Ещё статьи:
12.05.2023 Битрикс убрал тип поля «Привязка к карте Яндекс»
В новых обновлениях Битрикс убрал тип поля «Привязка к карте Яндекс». ID: 455
18.01.2023 Нюансы перехода битрикс на РНР 8.0
С февраля битрикс прекращает поддерживать РНР 7.4 и в битрикс сегменте сайтов начался переход на РНР 8 для получения обновлений.
Но без нюансов и ошибок. ID: 431
10.01.2023 БУС окончательно всё?
Появилась информация от битрикс, что грубо говоря поддержка по отраслевому медицинскому решению от битрикс будет до 1 февраля 2024 года, а что потом б. ID: 426
Новые статьи в блоге:
29.06.2023 Почему DNS есть, но ошибка «Не удалось получить записи с DNS серверов»
Проверка на VPS показывает, что DNS есть, но по факту ошибка «Не удалось получить записи с DNS серверов» ID: 461
29.06.2023 Почему отсутствуют для загрузки новые версии PHP
На одном VDS возникла ситуация, отсутствуют для загрузки новые версии РНР ID: 460
11.06.2023 Проблема кеширования битрикс меню подразделов
В новой версии обновления битрикс вылезла проблема с кешем меню выпадающих пунктов раздела (меню вида .тип_меню.menu_ext.php). При переходе по. ID: 459
String functions are overloaded by mbstring
Код ответа сервера при обращении к сайту удобно проверять при помощи curl, когда в браузер выводится ошибка String functions are overloaded by mbstring (она характерна в основном для сайтов на CMS Joomla) код ответа сервера будет 500
* Rebuilt URL to: example.com/
* Trying 123.123.123.123…
* Connected to example.com (123.123.123.123) port 80 (#0)
> GET / HTTP/1.1
> Host: example.com
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 500 Internal Server Error
В php-error.log или в лог ошибок веб-сервера при этом будут записываться сообщения аналогичного содержания:
[08-Sep-2017 11:39:04 UTC] PHP Fatal error: String functions are overloaded by mbstring in /home/web/sites/example.com/libraries/phputf8/utf8.php on line 39
Причина таких ошибок в том, что в файле php.ini содержится параметр mbstring.func_overload=2, для корректной работы сайтов на CMS Joomla же требуется значение 0.
Как исправить ошибку String functions are overloaded by mbstring
mbstring.func_overload=2 необходим для сайтов на CMS Битрикс. Директива нужна для нормального отображения кодировки. Если на одном сервере размещаются сайты и на Joomla и на Битрикс, и отказаться от данной директивы сохранив работоспособность сайтов нельзя — можно настроить 2 версии РНР на сервере указав для каждой из них разные значения mbstring.func_overload
php.ini может быть идентичным за исключением директивы о которой идет речь, для Битрикс она будет выглядеть как:
mbstring.func_overload=2
mbstring.internal_encoding=utf-8
mbstring.func_overload=0
Читайте про то как проверить актуальные настройки PHP с помощью скрипта phpinfo.
Для расширения mbstring в выводе скрипта будет отдельный блок (если расширение подключено). В блоке указаны текущие значения параметров.
Пример представлен на скриншоте:
Чтобы поменять значения нужно найти в выводе phpinfo подключаемые файлы php.ini, внести изменения там и перезапустить веб-сервер. Им чаще всего является Apache (в связке Nginx + Apache) или сервис приложений php-fpm.
Об этом также можно судить по выводу phpinfo, в верхней части выводится режим работы РНР. Это может быть Apache Handler, cgi, fastcgi, php-fpm. Последний говорит о том, что скрипты обрабатывает сервис php-fpm, остальные говорят о том, что используется Apache.