2014-01-17 51 views
2

我的目标是将整个域重定向到另一个域。旧域的每个URL都将重定向到新域的根URL。htaccess重定向的奇怪行为

要做到这一点我'做:

redirect 301/http://www.google.de/ 

问题是,当我测试它http://localhost/randomPath然后将其重定向到http://www.google.de/randomPath,而不是google.de的根URL。

有谁知道如何解决这个问题?

+1

似乎是这样:'redirectMatch 301 ^/http:// newsite.com'。在这里找到它http://css-tricks.com/snippets/htaccess/301-redirectcts/,滚动到2011年5月19日,瑞安burnette。 – loveNoHate

+0

哇,我怎么能忽略^ char?! :D更好!非常感谢你! – Crayl

+1

是的,很酷,如果最后没有'$'丢失,我就会惊呆,所以想到只有一个字符缺失。 ;)通过这个,你也可以安装搜索引擎优化的东西。 ;) – loveNoHate

回答

2

使用mod_rewrite对像匹配的主机名等规则更精确的控制:

RewriteEngine On 

RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC] 
RewriteRule^http://www.google.de/? [L,R] 

在目标URI的端部将剥离任何现有的查询字符串?

+0

作品!非常感谢你! – Crayl

+0

如果您执行'RewriteRule^http://www.google.de/? [L,R = 301]'你也有搜索引擎优化的东西。 ;) – loveNoHate