这是我想要弄清楚如何做的理想设置:
我有专业的域名托pipe:
Example.net
我有一个子域,home.example.net指向我的Mac mini在家里。 我已经得到了这个工作很好。 home.example.net的文档根目录是/ Users / me / Sites
我想要设置dynamic子域名,以便home.example.net(正则expression式版本:* .home.example.net)之前的任何内容具有文档根目录:/ Users / me / Sites / $ 1
例如:访问bacon.home.example.net将有doc根目录/ Users / me / Sites / bacon
我怎样才能得到这个设置,所以我不必为每个项目添加一个新的虚拟主机?
你需要启用mod_rewrite
a2enmod rewrite
并将以下指令添加到您的Apacheconfiguration中:
ServerAlias *.home.example.net <Directory /User/me/Sites> RewriteEngine On RewriteCond %{HTTP_HOST} !^home\.example\.net RewriteCond %{HTTP_HOST} ^([^.]+).home\.example\.net RewriteRule ^(.*)$ http://home.example.net/%1/$1 [L] </Directory>
当然,您需要确保每个子域的DNSlogging和子目录都存在。