@peacock
HTML/CSS, JS, PHP, JAVA, C#, Ubuntu

Как настроить mbstring.func_overload=0 для отдельного каталога сайта?

Сайт на 1С-Битрикс, работает в кодировке UTF-8. В httpd.conf для Apache выставлена конфигурация виртуального сервера с параметром mbstring.func_overload=2 через php_admin_value. Как известно, теперь в .htaccess нельзя менять параметр mbstring.func_overload. На сайте используется библиотечка FPDF для генерации pdf файлов, которая требует установки значения перегрузки в 0. С данной библиотекой давно работаю и все скрипты ориентированы на неё.
Как можно было бы для отдельной директории сайта указать другое значение перегрузки? или может возможно в .htaccess указать другой файл конфига php.ini?
Прочитал много форумов по данной тематике, но нигде вразумительного решения не нашёл. И еще в добавок: у меня проксирующая связка nginx+apache. Сервер vds. ОС Ubuntu server 15. PHP версии 5.5.9-1ubuntu4.14.
Просьба посоветовать как действовать. Не хотелось бы библиотечку менять)
  • Вопрос задан
  • 21496 просмотров
Решения вопроса 1
@peacock Автор вопроса
HTML/CSS, JS, PHP, JAVA, C#, Ubuntu
Хех....
Порылся в Гугле и всё таки нашёл решения и ответ на свой же вопрос: добавить в конфиг Apache следующие строки:
<Directory /var/www/path/to/dir>
php_admin_value mbstring.func_overload 0
</Directory>


Заработало. Спасибо, вопрос можно закрывать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
xmoonlight
@xmoonlight Куратор тега PHP
https://sitecoder.blogspot.com
Говорят, можно менять в .htaccess (я не тестил):
www.opengs.ru/webzametki/cms-1s-bitriks/mbstringfu...
php_value mbstring.func_overload 2
php_value mbstring.internal_encoding UTF-8
Ответ написан
alexfilus
@alexfilus
Fullstack разработчик
Вообще начиная с версии PHP 5.3 менять в .htaccess mbstring.func_overload действительно нельзя. Но на хостинге ТаймВеба почему-то работает. Как они этого добились - загадка.
Ответ написан
@badin
Можно в глобальной конфиге php прописать mbstring.func_overload=0, а для сайта в конфиге Apache (если не nginx) прописать php_admin_value mbstring.func_overload 2 и в вашем приложении исполнять код для которого нужна настройка mbstring.func_overload=0 из под php при помощи функции exec();

Мы так сделали сборку одного pdf-файла из нескольких pdf-файлов на Битрикс с использованием библиотеки mPDF, которая в свою очеред использует FPDF.
Ответ написан
Inkognitoss
@Inkognitoss
Full-stack разработчик.
Вы можете использовать
php_admin_value mbstring.func_overload 0
или
php_admin_value mbstring.func_overload 2
соответственно
но в директиве VirtualHost (желательно перед настройками директорий)
в htaccess с какой-то версии не должно работать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы