![Apache 2 重定向给定列表中的子域名](https://linux22.com/image/491419/Apache%202%20%E9%87%8D%E5%AE%9A%E5%90%91%E7%BB%99%E5%AE%9A%E5%88%97%E8%A1%A8%E4%B8%AD%E7%9A%84%E5%AD%90%E5%9F%9F%E5%90%8D.png)
我有一台 Web 服务器。很多域名和子域名的 DNS 条目都指向此服务器。其中大部分,如 www.foo.com、foo.com 和 subdomain.foo.com,我都想保留。但是,有一组子域名我想重定向。
例如,所有这些 URL 都解析到 Web 服务器。
test.foo.com bar.foo.com baz.foo.com
test.foo.com 没问题,我们不需要做任何事情,但 bar 和 baz 在列表中。这意味着我们必须将它们重定向到
bar.list.foo.com baz.list.foo.com
我不能在这里进行子域通配符重写,因为我们想要重定向的子域名列表很长,而我们不想重定向的子域名列表也很长。
我可以/应该执行 mod_rewrite 来将子域名与文本文件中的列表进行比较吗?如果可以,我该怎么做?如果不可以,我该如何处理这些重定向?
我知道我可以为每一个子域创建一个 mod_rewrite 配置条目,但是这需要输入很多内容,而且一定有更好的答案。
答案1
您可以使用RewriteMap 指令提供可在重写规则中使用的子域(或其他密钥)列表。