0

在我目前正在工作的应用程序中,我需要动态创建子域。如果我知道我需要重定向到的域是什么,那将是非常微不足道的。关键是我可以有很多域指向同一个服务器,每个域可能有很多子域,我想要一个可以处理它的 htaccess。

例如:domain1.com、domain1.com.br、domain2.com、domain2.co.uk 都可以指向我的服务器。当用户尝试访问 sub.domain1.com 时,我希望它被透明地重定向(没有 301 重定向)到 domain1.com。如果他尝试访问 sub.domain1.com.br,我希望它被透明地重定向到 domain1.com.br 等等(请注意,两个重定向都指向完全相同的点,唯一的区别在于地址酒吧)。

到目前为止,我尝试对从 www 重定向的行进行更改,但未成功。到非 www 域,但没有按预期工作:

    //This works
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

    //This ends with a "too many redirections" error
#RewriteCond %{HTTP_HOST} ^(.*)$ [NC]
#RewriteRule ^(.*)$ http://%1/$1 [L,QSA]

有人可以帮忙吗?

4

1 回答 1

0

尝试这个:

RewriteCond %{HTTP_HOST} ^(.+)\.([^.]{4,})\.([a-z]{3,4}|[a-z]{2,3}\.[a-z]{2}|[a-z]{2})$ [NC]
RewriteRule ^(.*)$ http://%2.%3/$1 [L,R=301]

这应该涵盖所有这些:

  • domain1.com
  • domain1.com.br
  • domain2.co.uk
  • domain3.es
  • domain4.info
于 2012-10-02T22:47:23.540 回答