在Apache虚拟主机容器内使用variables

如果请求来自http://xxx.domain.com ,

我想能够说;

DocumentRoot / home / $ {SUBDOMAIN_NAME}

以便虚拟主机的DocumentRoot将被分配给/ home / xxx

任何方式,我可以做到这一点?

感谢:D

ps:请不要担心安全或这个想法有多糟糕。 为简单起见,我已经过分简化了这个问题。

实际使用情况如下:

<IfModule mpm_itk_module> AssignUserId ${SUBDOMAIN_NAME} usergroup </IfModule> 

将有一个unix用户与相应的子域名。

我认为你在寻找的是大容量虚拟主机: http : //httpd.apache.org/docs/1.3/vhosts/mass.html

http://httpd.apache.org/docs/1.3/mod/mod_vhost_alias.html

你可能想要像这样的东西:

 UseCanonicalName Off VirtualDocumentRoot /home/%-1 

%-1会得到子域。

阅读列出的网站了解更多信息。

答案由Jeff提供。

dynamic使用mod_perl在Vhost容器中使用URL

 NameVirtualHost *:80 <VirtualHost *:80> ServerName xxx.example.com DocumentRoot /www/xxx </VirtualHost> <VirtualHost *:80> ServerName yyy.example.com DocumentRoot /www/yyy </VirtualHost> 

以上是基于名称的简单示例…您也可以使用基于IP的:

 <VirtualHost xxx.example.com> ServerAdmin [email protected] DocumentRoot /groups/example/xxx ServerName xxx.example.com ErrorLog /groups/example_xxx/logs/error_log TransferLog /groups/example_xxxx/logs/access_log </VirtualHost> <VirtualHost yyy.example.com> ServerAdmin [email protected] DocumentRoot /groups/example/yyy ServerName yyy.example.com ErrorLog /groups/example_yyy/logs/error_log TransferLog /groups/example_yyy/logs/access_log </VirtualHost>