首页 文章

通过.htaccess将非www重定向到除子域名之外的www

提问于
浏览
1

有几个这样的问题,但我的问题有点不同

Redirect non-www to www in .htaccess

force non www to www in htaccess

Redirect Non-WWW to WWW URLs

我想将网站的非www版本重定向到www,但它不应以任何方式影响子域名,所以

www.example.com => www.example.com
example.com => www.example.com
sub1.example.com => sub1.example.com
sub2.example.com => sub2.example.com

这不起作用,因为它在子域的情况下表现不佳

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

此解决方案工作正常

RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) https://www.example.com/$1 [R=301,L]

但是,重要的是我不想在htacess中对域名进行硬编码 . 如何(如果可能的话)对一般情况有上述重定向 - 没有提到确切的域名?

谢谢

1 回答

  • 1

    您可以使用此规则:

    RewriteCond %{HTTP_HOST} ^[^.]+\.com(\.au)?$ [NC]
    RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
    

相关问题