Apache中的Virtualhost(通配符和静态域)

时间:2011-07-07 07:21:45

标签: apache dns subdomain virtualhost

我有一些奇怪的情况。我想为一个域制作不同的DirectoryRoot。

example.com - > / DIR1 www.example.com - > / DIR1

* .example.com - > / DIR2

我正在尝试使用NameVirtualHost和ServerAlias进行设置。你能帮忙吗?

2 个答案:

答案 0 :(得分:0)

尝试这样做......

NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot = /var/www/dir1
    ServerName d1.example.com
<VirtualHost>

<VirtualHost *:80>
    DocumentRoot = /var/www/example
    ServerName example.com
<VirtualHost>

<VirtualHost *:80>
    DocumentRoot = /var/www/someotherdir
    ServerName other.example.com
    ServerAlias *.example.com
<VirtualHost>

取自我的工作设置(显然有点修剪!)

答案 1 :(得分:0)

试试这个,您可以使用apache的{​​{1}}指令来强制目录根

location

请记住第一个<VirtualHost *:80> ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/dir1 <VirtualHost> <VirtualHost *:80> ServerName *.example.com DocumentRoot /var/www/dir2 <VirtualHost> 优先。