2015-07-11 38 views
1

我更新我的htaccess,所以我可以将我的.net和.org域重定向到.com,但是我得到一个“域有一个循环错误”。使用htaccess循环错误?

我确定这个问题与非www到www的重定向有关,但我不知道如何组合所有的代码。有任何想法吗?

我的目标是:(1)重定向非www到www(已设置和完美的作品)和(2)重定向.net和.org域.COM

的.htaccess:

##### RewriteEngine enabled - BEGIN 
RewriteEngine On 

##### RewriteBase set - BEGIN 
RewriteBase/

##### Redirect non-www to www - BEGIN 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] 

##Redirect .net and .org to .com - BEGIN 
RewriteCond %{HTTP_HOST} ^(www\.)?example\.org [OR,NC] 
RewriteCond %{HTTP_HOST} ^(www\.)?example\.net [OR,NC] 
RewriteCond %{HTTP_HOST} ^www\.example\\.com [NC] 
RewriteRule (.*) http://example\.com/$1 [R=301,L] 

注意:.net和.org域都已经指向相同的IP,所以这里没有问题。

回答

1

你可以做到这一切在一个单一的规则:

RewriteEngine On 

RewriteCond %{HTTP_HOST} !^www\. [NC,OR] 
RewriteCond %{HTTP_HOST} \.(org|net)$ [NC] 
RewriteRule (.*) http://www.example.com/$1 [R=301,L] 
+1

感谢anubhava这个工作完美!干净简洁 – lespaul