Я хочу ограничить доступ к файлам, используя PHP open_basedir для нескольких доменов. Каждый домен находится в собственном каталоге, поэтому я хочу, чтобы все PHP-скрипты доменов не мешали друг другу. Как я могу установить разные open_basedir
путь для каждого домена в одном .htaccess
?
Если бы это был только 1 домен, это могло бы выглядеть так:
# /hosting/domains/.htaccess
php_value open_basedir /hosting/domains/example.com/
У каждого пользователя есть FTP
счет ограничен /hosting/domains/example.com/
. Так что, очевидно, я не могу поставить .htaccess
в /hosting/domains/example.com/.htaccess
поскольку пользователь сможет изменить .htaccess
содержание. Значит, должен быть один .htaccess
в /hosting/domains/.htaccess
для всех доменов.
Вот как я это себе представляю, возможно ли что-то подобное?
# /hosting/domains/.htaccess
php_value open_basedir /hosting/domains/${current_domain}/
Я использую: Apache 2.4, PHP 5.5
Вы можете установить open_basedir
в виртуальный хост, поэтому пользователи не смогут редактировать или удалять его в <Directory>
директива.
Думаю, это невозможно. У каждого домена должен быть определенный .htaccess
файл, потому что этот файл является настройками для каждой папки, поэтому нет возможности указать подпапку. И даже это возможно, тогда пользователь может использовать свой собственный .htaccess
файл для переопределения настроек.
На виртуальном хостинге решение только одно. Одна учетная запись пользователя на домен.