我将此代码段用于通配符子域并且效果很好:
<VirtualHost *:80>
DocumentRoot /var/www/subdomains
ServerName subdomains.example.com
ServerAlias *.example.com
</VirtualHost>
现在我也想在DocumentRoot中使用通配符,例如:
<VirtualHost *:80>
DocumentRoot /var/www/*
ServerName sumdomains.example.com
ServerAlias *.example.com
</VirtualHost>
这意味着如果调用'username.example.com',DocumentRoot指向'/ var / www / username /'。
提前致谢!
答案 0 :(得分:2)
你不能直接这样做,但你可以重写你的网址以具有相同的行为
在配置文件中添加这两行
DocumentRoot /var/www/
RewriteEngine On
RewriteRule ^/(.*) /%{HTTP_HOST}/$1
对http://user.example.com/foo.html的请求将获取文件 /var/www/user.example.com/foo.html