Apache: open_basedir with variable


Apache: open_basedir with variable

我现在有了这个:

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

但这行不通。我该怎么称呼那个.*

不可能。Apache不解释指令中的任何变量设置。您可以在某些情况下使用%1样式的RewriteCond反向引用,甚至可以使用%{DOCUMENT_ROOT}。但大多数指令都使用静态值。

特别是PHP-Apache SAPI不试图解释任何%$序列。

Serverfault上列出了一些解决方法:在Apache配置文件中使用变量来减少重复?。但是mod_macromod_define都无法实现您想要的。您必须为每个主目录分别定义它。(这也是Plesk和Confixx对多个账户所做的。(