将所有www非www重定向到https非www

时间:2014-08-20 06:27:20

标签: regex apache .htaccess mod-rewrite

我有一个网站example.com,我想重定向以下网址 -

www.example.com
example.com
https://www.example.com

https://example.com

到目前为止我尝试的是这个 -

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

https://www.example.com

外,这种气体效果很好

帮助表示赞赏!! 感谢

1 个答案:

答案 0 :(得分:1)

您的RewriteCond不适合您的要求。

您可以遵守以下规则:

RewriteEngine On

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

或使用www.example.com

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