Теперь у меня есть это:
<Directory ~ "^/home/.*">
php_flag open_basedir "/home/$1"
</Directory>
Но это не работает. Как я могу обратиться к этому .*
?
Теперь у меня есть это:
<Directory ~ "^/home/.*">
php_flag open_basedir "/home/$1"
</Directory>
Но это не работает. Как я могу обратиться к этому .*
?
Невозможно. Apache не интерпретирует настройки переменных в директивах. Вы можете использовать обратные ссылки RewriteCond в стиле %1
в некоторых или даже %{DOCUMENT_ROOT}
. Но в большинстве директив используются статические значения.
В частности, PHP Apache SAPI не пытается интерпретировать какие-либо последовательности %
или $
.
В Serverfault: использование переменных в конфигурации Apache есть несколько обходных путей. файлы, чтобы уменьшить дублирование?. Но ни mod_macro
, ни mod_define
не добьются того, чего вы хотите. Вам нужно будет определить его для каждого домашнего каталога отдельно. (То же самое делают Plesk и Confixx для нескольких учетных записей.)