Отключение функции open_basedir

В случае, когда на вашем сайте при загрузке страниц возникают проблемы, связанные с функцией open_basedir, вы можете ее отключить. На это указывает ошибка open_basedir restriction in effect, появляющаяся на сервере в логах ошибок или на страницах сайта

Суть open_basedir состоит в ограничении доступа PHP-скриптов сайта к другим каталогам и скриптам, размещенным вне его пределов. Основное назначение этой функции заключается в изоляции сайтов, чтобы каждый из них выделял файлы или каталоги своей корневой директории без вмешательства в аналогичные системы других сайтов

Чтобы отключить функцию open_basedir в панели Hestia, следует выполнить следующие действия:

1. Закомментировать строки, касающиеся указанной функции, в темплейт-конфиг-файле. Расположение темплейт-файлов можно найти по пути /usr/local/hestia/data/templates/web/php-fpm/ Их названия схожи с наименованиями версий PHP. Например, для версии 7.4 предусмотрен теймплейт с названием PHP-7_4.tpl.

Строку php_admin_value[open_basedir] = необходимо закомментировать. В начало строки добавляется символ точки с запятой вроде ;php_admin_value[open_basedir] = ... 

Выполнить это можно в любом редакторе файлов - например, vim или nano. Поможет справиться команда sed -i 's/php_admin_value[open_basedir]/;php_admin_value[open_basedir]/g' /usr/local/hestia/data/templates/web/php-fpm/PHP-7_4.tpl' /usr/local/hestia/data/templates/web/php-fpm/PHP-7_4.tpl;

Стоит обратить внимание на имя файла - оно должно соответствовать желаемой версии PHP. Пользователь должен изменить название в соответствии со своими пожланиями.

2. Внести изменения в основную конфигурацию сайта и перезагрузить службу PHP. Действия выполняются самостоятельно с помощью панели управления или через команду v-change-web-domain-backend-tpl admin example.pp.ua PHP-7_4. В указанной строке есть три переменные: имя пользователя, домен сайта и название темплейта - соответственно admin, example.pp.ua, PHP-7_4.

Пользователь должен изменить приведенные данные по своей потребности перед запуском команды.

3. Проверить отключение функции. Этот шаг проводится с применением скрипта phphinfo.