Apache: open_basedir с переменной

Теперь у меня есть это:

<Directory ~ "^/home/.*">
php_flag open_basedir "/home/$1"
</Directory>

Но это не работает. Как я могу обратиться к этому .*?


person www.data-blogger.com    schedule 16.04.2011    source источник


Ответы (1)


Невозможно. Apache не интерпретирует настройки переменных в директивах. Вы можете использовать обратные ссылки RewriteCond в стиле %1 в некоторых или даже %{DOCUMENT_ROOT}. Но в большинстве директив используются статические значения.

В частности, PHP Apache SAPI не пытается интерпретировать какие-либо последовательности % или $.

В Serverfault: использование переменных в конфигурации Apache есть несколько обходных путей. файлы, чтобы уменьшить дублирование?. Но ни mod_macro, ни mod_define не добьются того, чего вы хотите. Вам нужно будет определить его для каждого домашнего каталога отдельно. (То же самое делают Plesk и Confixx для нескольких учетных записей.)

person mario    schedule 16.04.2011
comment
Спасибо, тогда так и сделаем :). - person www.data-blogger.com; 16.04.2011