使用VirtualHost ServerName中的目录

时间:2011-04-05 12:49:36

标签: apache virtualhost

我目前正在使用基于名称的虚拟主机配置,从同一个IP地址为大约5个不同的网站提供服务,就像在apache文档中一样:

<VirtualHost *:80>
ServerName www.domain.tld
DocumentRoot /www/domain
</VirtualHost>

<VirtualHost *:80>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>

是否可能有类似的东西:

<VirtualHost *:80>
ServerName www.domain.tld/folderpath
DocumentRoot /www/software
</VirtualHost>

此文件夹中的网页使用的是不同的软件堆栈,我希望将其保持良好的分离。我尝试了上面的方法,但它没有用。

2 个答案:

答案 0 :(得分:33)

您展示的方式不可能 - VirtualHost始终只是主持人。但您可以使用Alias

<VirtualHost *:80>
ServerName www.domain.tld
DocumentRoot /www/domain

Alias /folderpath /www/software

</VirtualHost>

答案 1 :(得分:0)

我添加到alias.conf文件(在Windows计算机上)。
请记住,如果它不在“文档根目录”路径下,则需要权限

<IfModule alias_module>

    #### FolderPath ####
    Alias /folderpath "E:/any/path/you/like"

    <Directory "E:/any/path/you/like">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    #### Another ####
    Alias /another "E:/another/different/path"

    <Directory "E:/another/different/path">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

</IfModule>