2.8.18. open_basedir

Важные моменты:

  • Полной изоляции сайтов друг от друга можно добиться только путём размещения их в отдельных хостинг-аккаунтах.
  • Параметр автоматически отключается на время работы профилировщика PHP.

Параметр open_basedir ограничивает уровень доступа для скриптов PHP сайта.

Важно учитывать, что его использование параметра не может обеспечить полной изоляции сайтов друг от друга в рамках одного хостинг-аккаунта. Это связано с тем, что параметр ограничивает доступ к файлам только средствами PHP, однако в случае обращения к файлам за пределами установленного доступа обходными путями, например с помощью вызова команд через shell_exec (потенциально опасные внутренние функции PHP, которые не используются скриптами сайта, можно отключать), доступ ограничен не будет.

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

  1. Откройте настройки PHP.
  2. Установите переключатель напротив нужного уровня доступа и сохраните изменения:
    • «/home/example/example.com/www» — доступ ограничен корневым каталогом сайта.
    • «/home/example/example.com» — доступ ограничен родительским каталогом корневого каталога сайта.
    • «/home/example» — доступ ограничен корневым каталогом хостинг-аккаунта.
    • «отключить» — доступ не ограничивается.
  3. Подождите примерно 10-15 минут, пока изменения вступят в силу.
Содержание