2015-10-18 80 views
0

我知道有大量的线程,我觉得我已经读了所有,但我卡住了。Htaccess通用域名重定向

我想重定向任何东西,不管www是否存在,也不管域扩展名为“www。和.com”。但我不想指定域名本身。

这不工作,使我 “www..com”:提前

RewriteCond %{HTTP_HOST} !^www\.([a-z0-9-]+)\.com$ [NC] 
RewriteRule ^(.*)$ http://www.%1.com/$1 [R=301,L] 

感谢

回答

0

您可以使用:

RewriteCond %{HTTP_HOST} !^www\.[a-z0-9-]+\.com$ [NC] 
RewriteCond %{HTTP_HOST} (?:^|\.)([a-z0-9-]+)\.[a-z]+$ [NC] 
RewriteRule ^(.*)$ http://www.%1.com/$1 [R=301,L] 

不能使用%1在你的代码中,因为如果你测试不等于(与!),变量不会被初始化。

+1

非常感谢。它的工作原理和我学到的东西:) –

+0

很高兴知道它解决了问题,您可以通过点击答案左上角的复选标记将答案标记为已接受。 – Croises