如果我有以下 Apache 配置和通配符 *. s1.ex.com 指向服务器
<VirtualHost *>
ServerName example.com
DocumentRoot /var/www/example.com
</VirtualHost>
<VirtualHost *>
ServerName example.net
DocumentRoot /home/user2/web/example.net
</VirtualHost>
是否可以让域名自动example.com.s1.ex.com
example.net.s1.ex.com
指向它们各自的虚拟主机?
编辑:我正在寻找一种可以自动执行与我手动添加 ServerAlias 相同的操作的解决方案。
答案1
您可以添加 ServerAlias:
<VirtualHost *>
ServerName example.com
ServerAlias example.com.s1.ex.com
DocumentRoot /var/www/example.com
</VirtualHost>
<VirtualHost *>
ServerName example.net
ServerAlias example.net.s1.ex.com
DocumentRoot /home/user2/web/example.net
</VirtualHost>
答案2
答案3
我想你想要mod_vhost_alias。
LoadModule vhost_alias_module /usr/lib/apache2/modules/mod_vhost_alias.so
<VirtualHost *>
VirtualDocumentRoot /var/www/%-5.0.%-4
</VirtualHost>
例如.com.s1.ex.com现在由 提供服务/var/www/example.com
。