301将HTTP重定向到HTTPS - 非www到www

时间:2018-05-09 11:49:53

标签: .htaccess url url-redirection http-redirect

我正在寻找完美的301重定向HTTP到HTTPS - 非www到www。但我找不到有效的解决方案。

这是我想要做的事情

http://domain.tld/ → https://www.domain.tld/
http://www.domain.tld/ → https://www.domain.tld/
https://domain.tld/ → https://www.domain.tld/

在这篇文章中:Best Practice: 301 Redirect HTTP to HTTPS (Standard Domain)

总结如下:

    RewriteEngine On 
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\. [NC] 
    RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L,NE] 

但这是为www。到非www。

请帮忙。

谢谢,

1 个答案:

答案 0 :(得分:1)

不确定您是需要多个域,还是只需要一个,但这里是一个支持多个域的示例。既然你想在所有域上使用www和https,我只是硬编码了。如果网址中存在子域,则此 也会跳过重写。您可能需要对其进行调整以支持带点的TLD(即.co.uk,.co.au等)。

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