你能相对于conf文件设置Apache的DocumentRoot吗?

时间:2015-01-23 03:58:18

标签: apache apache2 httpd.conf

设置apache2虚拟主机时,是否可以引用.conf文件中.conf文件的路径?

如果我的目录结构如下:

root/conf/vhost.conf
root/log/error.log
root/public/

我可以这样做:

<VirtualHost *:80>
  ...

  DocumentRoot ${THIS_CONF_FILE_PATH}/../public
  ErrorLog  ${THIS_CONF_FILE_PATH}/../log/error.log

  ...
</VirtualHost>

1 个答案:

答案 0 :(得分:2)

当然你可以做类似的事情,但为了简单起见,你应该将ServerRoot指令设置为root目录。例如,像这样的东西看起来会更清洁:

ServerRoot /path/to/root    
Include conf/*.conf
...

比你的vhost.conf文件看起来像这样:

<VirtualHost *:80>
  ...

  DocumentRoot public
  ErrorLog log/error.log

  ...
</VirtualHost>