DNSredirectdomain.com到www.domain.com

我对这个问题进行了networkingsearch,但对结果完全失望。 案件是将所有请求redirect到domain.com到子域www.domain.com。

所以我有:

  1. www.domain.com – 主要网站域名,所有客户端请求应该在这里redirect
  2. domain.com – 另一个不使用www前缀的网站入口点,所有的请求都应该被redirect到www.domain.com
  3. mydomain.com – 替代网站别名,所有请求应redirect到www.domain.com
  4. www.mydomain.com – 对于使用www前缀的用户,所有请求应redirect到www.domain.com

我明白这是可能的使用.htaccess和PHP。 但我想弄清楚如何才能使用DNS来完成。 我也明白,DNS查询的结果并不会改变HTTP层发生的情况,所以最初input的域名将始终是发送到主机中的Web服务器的域名。 所以重写domain.com到www.domain.com我仍然需要Apache mod_rewrite。 但是我想用DNS(CNAME和Alogging)来完成主要的工作。

所以主要的问题是CNAME和Alogging每个域上面应该有什么?

您可以使www.domain.com成为www.domain.com的Alogging和所有其他域名CNAME。 但这只能“解决”,如果www.domain.com的IP地址发生变化,您不必更改其他DNS实体,因为它们是别名。

所以在DNS层面上,没有办法强制redirect。 有一个很好的理由,因为DNS只用于HTTP。 例如,如果所有对domain.com的请求都将redirect到www.domain.com,则您的电子邮件地址将更改为user@www.domain.com。

所以对于HTTPredirect,您将不得不使用HTTP解决scheme。 这可以在web服务器级别(mod_rewrite,在代码中,JavaScript(唉)等),但你也可以在你的web服务器前面有一个代理来处理这个。