Regex 使用htaccess时发生循环错误?

Regex 使用htaccess时发生循环错误?,regex,apache,.htaccess,mod-rewrite,redirect,Regex,Apache,.htaccess,Mod Rewrite,Redirect,我正在更新我的htaccess,这样我就可以将我的.net和.org域重定向到.com,但是我得到了一个“域有一个循环错误” 我确信这个问题与将非www重定向到www有关,但我不确定如何组合所有代码。有什么想法吗 我的目标是:(1)将非www重定向到www(已经设置好并运行良好)和(2)将.net和.org域重定向到.com HTACCESS: ##### RewriteEngine enabled - BEGIN RewriteEngine On ##### RewriteBase set

我正在更新我的htaccess,这样我就可以将我的.net和.org域重定向到.com,但是我得到了一个“域有一个循环错误”

我确信这个问题与将非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,所以这里没有问题

您可以在一条规则中完成这一切:

RewriteEngine On

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

谢谢anubhava,这很好用!!简洁