命名虚拟主机Apache2和301从根域redirect到子域

我知道这个问题经常出现,我遵循了很多例子和build议,但是我不能得到它的工作。 下面是我需要实现的:

我有两个configuration两个域redirect到其中的一个子域:domain-one.com(和www.domain-one.com)和domain-two.com都应该发送301 Moved Permamently标题和redirect到www.domain- two.com。

我已经为domain-one.com设置了NamedVirtualHost,如下所示:

ServerName domain-one.com ServerAlias www.domain-one.com Redirect 301 ^/ http://www.domain-two.com 

而这似乎是为domain-one.com工作,但www.domain-one.com不redirect,整个设置似乎被忽略,服务器的默认主机configuration设置文件服务。

至于从domain-two.comredirect到www.domain-two.com我创build了两个NamedVirtualHosts,www.domain-two.com是其configuration(ServerName设置为www.domain-two.com)和域-one.comconfiguration为:

 ServerName domain-two.com Redirect 301 ^/ http://www.domain-two.com 

而且这个configuration也失败了。

从我读到的redirectApache Redirect指令应该足以实现我所需要的。 我可以使用一些mod_rewriting,甚至使用PHP和占用的头()来做我想做的事情,但有人可以向我解释我的想法和这种configuration有什么问题。

谢谢

尝试

 Redirect permanent /(.*) http://www.domain-two.com/$1 

如果您不希望将请求附加到域,那么您可以这样做

 Redirect permanent /(.*) http://www.domain-two.com