Htaccess 文件在这里不会有太大帮助,因为它们位于文档根目录下,因此在 apache 确定哪个虚拟主机指向此特定文档根目录后进行评估。
假设您的 DNS 条目配置良好,您应该直接修改 apache 主配置。
如果每个子域都指向不同的文档根目录,则必须为每个子域创建一个虚拟主机:
<VirtualHost *>
ServerName example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
<VirtualHost *>
ServerName test1.example.org
DocumentRoot /path/to/test1.example.org
# ...
</VirtualHost>
相反,如果多个子域指向单个文档根,则可以使用 ServerAlias 指令:
<VirtualHost *>
ServerName example.org
ServerAlias test1.example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
如果所有可能的子域都指向同一个文档根目录,您就可以从在 ServerAlias 列表中列出每个子域的痛苦中解脱出来,而改用通配符:
<VirtualHost *>
ServerName example.org
ServerAlias *.example.org
DocumentRoot /path/to/example.org
# ...
</VirtualHost>
当然,需要更多配置指令来确保每个虚拟主机正常工作,但这些是您应该了解的主要构建块以进行工作设置。